Remove KEYMAP and LAYOUT_kc (#12160)

* alias KEYMAP to LAYOUT

* remove KEYMAP and LAYOUT_kc
This commit is contained in:
Zach White 2021-05-11 10:10:31 -07:00 committed by GitHub
parent d84cbc3cec
commit 38d8d5445e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
271 changed files with 487 additions and 12334 deletions

View file

@ -56,16 +56,3 @@
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, K2c, K2d, K2e, K2f }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b, K3c, K3d, K3e, K3f } \
}
#define LAYOUT_kc_ortho_4x12( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b \
) \
{ \
{ KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0a, KC_##K0b, ___, ___, ___, ___}, \
{ KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1a, KC_##K1b, ___, ___, ___, ___}, \
{ KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2a, KC_##K2b, ___, ___, ___, ___}, \
{ KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37, KC_##K38, KC_##K39, KC_##K3a, KC_##K3b, ___, ___, ___, ___} \
}

View file

@ -20,8 +20,6 @@
#include QMK_KEYBOARD_H
#define KC_ KC_TRNS
#define KC_FN1 MO(_FN)
#define KC_FN2 LT(_FN, KC_CAPS)
@ -54,30 +52,30 @@ enum {
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc( /* Default layer
[_QWERTY] = LAYOUT_68_ansi( /* Default layer
*/
GESC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL , BSPC , INS ,PGUP, /*
KC_GESC, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_MINS,KC_EQL , KC_BSPC , KC_INS ,KC_PGUP, /*
*/
TAB , Q , W , E , R , T , Y , U , I , O , P ,LBRC,RBRC, BSLS , DEL ,PGDN, /*
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_LBRC,KC_RBRC, KC_BSLS , KC_DEL ,KC_PGDN, /*
*/
FN2 , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, ENTER , /*
KC_FN2 , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT, KC_ENTER , /*
*/
LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, RSFT , UP , /*
KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH, KC_RSFT , KC_UP , /*
*/
LCTL ,LGUI ,LALT , SPACE ,RALT , FN1 ,RCTL , LEFT,DOWN,RGHT /*
KC_LCTL ,KC_LGUI ,KC_LALT , KC_SPACE ,KC_RALT , KC_FN1 ,KC_RCTL , KC_LEFT,KC_DOWN,KC_RGHT /*
*/),
[_FN] = LAYOUT_kc( /* FN & CAPS layer
[_FN] = LAYOUT_68_ansi( /* FN & CAPS layer
*/
GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 , F10, F11, F12, RSTP , PSCR,HOME, /*
KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11, KC_F12, KC_RSTP , KC_PSCR,KC_HOME, /*
Esc 1! 2@ 3# 4$ 5% 6^ 7& 8* 9( 0) -_ =+ Ins PgUp */
,PLY1,PLY2, , , , , , 7 , 8 , 9 ,BLDN,BLUP,BLTOG , ,END , /*
_______ ,KC_PLY1,KC_PLY2,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_7 , KC_8 , KC_9 ,KC_BLDN,KC_BLUP,KC_BLTOG ,KC_TRNS ,KC_END , /*
Tab Q W E R T Y U I O P [{ ]} \| Del PgDn */
, , , , , , , , 4 , 5 , 6 , , TERM , /*
_______ ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_4 , KC_5 , KC_6 ,KC_TRNS, KC_TERM , /*
Caps A S D F G H J K L ;: '" ┻━ Enter ━┫ ┏━━━━┓ */
,REC1,REC2, , ,MSTP, ,MUTE, 1 , 2 , 3 , , VOLU, /*
_______ ,KC_REC1,KC_REC2,KC_TRNS,KC_TRNS,KC_MSTP,KC_TRNS,KC_MUTE, KC_1 , KC_2 , KC_3 ,KC_TRNS , KC_VOLU, /*
Shift Z X C V B N M ,< .> /? Shift */
, , , MPLY , 0 , , , MPRV,VOLD,MNXT /*
_______,KC_TRNS ,KC_TRNS , KC_MPLY , KC_0 ,KC_TRNS ,KC_TRNS , KC_MPRV,KC_VOLD,KC_MNXT /*
Ctrl GUI Alt Space Alt Fn Ctrl */)
};
// clang-format on

View file

@ -1,59 +0,0 @@
#include QMK_KEYBOARD_H
#define _QWERTY 0
#define _FN1 1
#define _FN2 2
#define KC_ KC_TRNS
#define KC_X0 LT(_FN2, KC_CAPS)
#define KC_X1 MO(_FN1)
#define KC_X2 BL_STEP
#define KC_X3 BL_BRTG
#define KC_X4 BL_TOGG
#define KC_X5 BL_INC
#define KC_X6 BL_DEC
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL , BSPC , INS ,PGUP,
/*|----`----`----`----`----`----`----`----`----`----`----`----`----`--------| |----`----| */
TAB , Q , W , E , R , T , Y , U , I , O , P ,LBRC,RBRC, BSLS , DEL ,PGDN,
/*|------`----`----`----`----`----`----`----`----`----`----`----`----`------| `----`----' */
X0 , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, ENTER ,
/*|-------`----`----`----`----`----`----`----`----`----`----`----`----------| ,----. */
LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, RSFT , UP ,
/*|---------`----`----`----`----`----`----`----`----`----`----`-------------.--|----|----. */
LCTL ,LGUI ,LALT , SPACE , X1 ,RALT ,RCTL , LEFT,DOWN,RGHT
/*`-----+-----+-----+------------------------------+------+-----+-----' `----+----+----' */
),
[_FN1] = LAYOUT_kc(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , ,HOME,
/*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
, , UP , , , , , , ,PSCR,SLCK,PAUS, X2 , , ,END,
/*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
X0 ,LEFT,DOWN,RGHT, , X6 , X5 , X4 , X3 , X2 ,HOME, , ,
/*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
, ,MPLY,MSTP,MPRV,MNXT,VOLD,VOLU,MUTE, ,END , , X5 ,
/*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
, , , , , , , X3 , X6 , X4
/*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
),
[_FN2] = LAYOUT_kc(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , VOLU,HOME,
/*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
, , , UP , , , , 7 , 8 , 9 , , , , , VOLD,END,
/*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
, ,LEFT,DOWN,RGHT, , , 4 , 5 , 6 , , , ,
/*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
, , , , , , 0 , 1 , 2 , 3 , , , MUTE,
/*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
, , , , , , , MPRV,MPLY,MNXT
/*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
)
};

View file

@ -3,51 +3,50 @@
#define _QWERTY 0
#define _FN1 1
#define _FN2 2
#define KC_ KC_TRNS
#define KC_X0 LT(_FN2, KC_GRV)
#define KC_X1 MO(_FN1)
#define KC_X2 BL_STEP
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT_68_ansi(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,EQL , BSPC , INS ,PGUP,
KC_ESC , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_MINS,KC_EQL , KC_BSPC , KC_INS ,KC_PGUP,
/*|----`----`----`----`----`----`----`----`----`----`----`----`----`--------| |----`----| */
TAB , Q , W , E , R , T , Y , U , I , O , P ,LBRC,RBRC, BSLS , DEL ,PGDN,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_LBRC,KC_RBRC, KC_BSLS , KC_DEL ,KC_PGDN,
/*|------`----`----`----`----`----`----`----`----`----`----`----`----`------| `----`----' */
X0 , A , S , D , F , G , H , J , K , L ,SCLN,QUOT, ENTER ,
KC_X0 , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT, KC_ENTER ,
/*|-------`----`----`----`----`----`----`----`----`----`----`----`----------| ,----. */
LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, RSFT , UP ,
KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH, KC_RSFT , KC_UP ,
/*|---------`----`----`----`----`----`----`----`----`----`----`-------------.--|----|----. */
LCTL ,LGUI ,LALT , SPACE , X1 ,RALT ,RCTL , LEFT,DOWN,RGHT
KC_LCTL ,KC_LGUI ,KC_LALT , KC_SPACE , KC_X1 ,KC_RALT ,KC_RCTL , KC_LEFT,KC_DOWN,KC_RGHT
/*`-----+-----+-----+------------------------------+------+-----+-----' `----+----+----' */
),
[_FN1] = LAYOUT_kc(
[_FN1] = LAYOUT_68_ansi(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , VOLU,HOME,
KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 , KC_BSPC , KC_VOLU,KC_HOME,
/*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
, , , UP , , , , , , , , , X2 , , VOLD,END,
KC_TRNS,KC_TRNS,KC_TRNS, KC_UP ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_X2 , KC_TRNS, KC_VOLD,KC_END,
/*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
, ,LEFT,DOWN,RGHT, , , , , , , , ,
KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,
/*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
, , , , , , ,MUTE, , , , , MUTE,
KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_MUTE,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_MUTE,
/*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
, , , , , , , MPRV,MPLY,MNXT
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV,KC_MPLY,KC_MNXT
/*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
),
[_FN2] = LAYOUT_kc(
[_FN2] = LAYOUT_68_ansi(
/*,----+----+----+----+----+----+----+----+----+----+----+----+----+--------. ,----+----. */
GRV , F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,F11 ,F12 , BSPC , VOLU,HOME,
KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 , KC_BSPC , KC_VOLU,KC_HOME,
/*|esc-`-1--`-2--`-3--`-4--`-5--`-6--`-7--`-8--`-9--`-0--`mnus`plus`--bksp--| |ins-`pgup| */
, , , UP , , , , 7 , 8 , 9 , , , , , VOLD,END,
KC_TRNS,KC_TRNS,KC_TRNS, KC_UP ,KC_TRNS,KC_TRNS,KC_TRNS, KC_7 , KC_8 , KC_9 ,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_VOLD,KC_END,
/*|tab---`-q--`-w--`-e--`-r--`-t--`-y--`-u--`-i--`-o--`-p--`-{--`-}--`--|---| `del-`pgdn' */
, ,LEFT,DOWN,RGHT, , , 4 , 5 , 6 , , , ,
KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,KC_TRNS,KC_TRNS, KC_4 , KC_5 , KC_6 ,KC_TRNS,KC_TRNS, KC_TRNS,
/*|caps---`-a--`-s--`-d--`-f--`-g--`-h--`-j--`-k--`-l--`-;--`-'--`----enter-| ,----. */
, , , , , , 0 , 1 , 2 , 3 , , , MUTE,
KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_0 , KC_1 , KC_2 , KC_3 ,KC_TRNS, KC_TRNS, KC_MUTE,
/*|shift----`-z--`-x--`-c--`-v--`-b--`-n--`-m--`-,--`-.--`-/--`-------shift-.--|-up-|----. */
, , , , , , , MPRV,MPLY,MNXT
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV,KC_MPLY,KC_MNXT
/*`ctrl-+-gui-+-alt-+----------space---------------+-fn---+-alt-+ctrl-' `left+down+rght' */
)
};

View file

@ -18,20 +18,3 @@
{ K60, K61, K62, K63, K64, K65, K66, K67, K68 }, \
{ K70, K71, K72, K73, K74, KC_NO, KC_NO, KC_NO, KC_NO } \
}
#define LAYOUT_kc( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K10, K11, K12, K13, K14, K15, K16, \
K17, K18, K20, K21, K22, K23, K24, K25, K26, K27, K28, K30, K31, K32, K33, K34, \
K35, K36, K37, K38, K40, K41, K42, K43, K44, K45, K46, K47, K48, \
K50, K51, K52, K53, K54, K55, K56, K57, K58, K60, K61, K62, K63, \
K64, K65, K66, K67, K68, K70, K71, K72, K73, K74 \
) LAYOUT_68_ansi( \
KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, \
KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, \
KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, \
KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37, KC_##K38, \
KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_##K47, KC_##K48, \
KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57, KC_##K58, \
KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67, KC_##K68, \
KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74 \
)

View file

@ -54,16 +54,3 @@
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b } \
}
#define LAYOUT_kc_ortho_4x12( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3a, K3b \
) \
{ \
{ KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0a, KC_##K0b }, \
{ KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1a, KC_##K1b }, \
{ KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2a, KC_##K2b }, \
{ KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37, KC_##K38, KC_##K39, KC_##K3a, KC_##K3b } \
}

View file

@ -29,18 +29,3 @@
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b }, \
{ K30, K31, K32, K33, K34, K35, K35, K37, K38, K39, K3a, K3b } \
}
#define LAYOUT_kc( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0a, K0b, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1a, K1b, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2a, K2b, \
K30, K31, K32, K33, K34, K35, K37, K38, K39, K3a, K3b \
) \
LAYOUT( \
KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0a, KC_##K0b, \
KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1a, KC_##K1b, \
KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2a, KC_##K2b, \
KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K37, KC_##K38, KC_##K39, KC_##K3a, KC_##K3b \
)
#define LAYOUT_kc_ut47 LAYOUT_kc

View file

@ -5,24 +5,3 @@
#ifdef KEYBOARD_adkb96_rev1
#include "rev1.h"
#endif
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc_ortho_6x16( \
L00, L01, L02, L03, L04, L05, L06, L07, R00, R01, R02, R03, R04, R05, R06, R07, \
L10, L11, L12, L13, L14, L15, L16, L17, R10, R11, R12, R13, R14, R15, R16, R17, \
L20, L21, L22, L23, L24, L25, L26, L27, R20, R21, R22, R23, R24, R25, R26, R27, \
L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \
L40, L41, L42, L43, L44, L45, L46, L47, R40, R41, R42, R43, R44, R45, R46, R47, \
L50, L51, L52, L53, L54, L55, L56, L57, R50, R51, R52, R53, R54, R55, R56, R57 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##L06, KC_##L07, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, KC_##R06, KC_##R07, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##L16, KC_##L17, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, KC_##R16, KC_##R17, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##L26, KC_##L27, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, KC_##R26, KC_##R27, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##L37, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, KC_##R36, KC_##R37, \
KC_##L40, KC_##L41, KC_##L42, KC_##L43, KC_##L44, KC_##L45, KC_##L46, KC_##L47, KC_##R40, KC_##R41, KC_##R42, KC_##R43, KC_##R44, KC_##R45, KC_##R46, KC_##R47, \
KC_##L50, KC_##L51, KC_##L52, KC_##L53, KC_##L54, KC_##L55, KC_##L56, KC_##L57, KC_##R50, KC_##R51, KC_##R52, KC_##R53, KC_##R54, KC_##R55, KC_##R56 ,KC_##R57 \
)
#define LAYOUT_kc LAYOUT_kc_ortho_6x16

View file

@ -1,5 +1,4 @@
#ifndef ATREUS62_H
#define ATREUS62_H
#pragma once
#include "quantum.h"
@ -20,21 +19,3 @@
{ k30, k31, k32, k33, k34, k35, k46, k36, k37, k38, k39, k3a, k3b }, \
{ k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c, k4d } \
}
// Used to create a keymap using only KC_ prefixed keys.
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \
) \
{ \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_NO, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_NO, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_NO, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k47, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b }, \
{ KC_##k40, KC_##k41, KC_##k42, KC_##k43, KC_##k44, KC_##k45, KC_##k46, KC_##k48, KC_##k49, KC_##k4a, KC_##k4b, KC_##k4c, KC_##k4d } \
}
#endif

View file

@ -1,10 +0,0 @@
<!-- -*- mode: markdown; fill-column: 8192 -*- -->
Atreus52 Modification
=======================
Firmware for my custom keyboard based on the Atreus layout, but with 5 rows and only 5 columns per hand.
More documentation coming soon.
# License
GPL-3+

View file

@ -1,16 +0,0 @@
#include "../../config.h"
#undef MANUFACTURER
#undef PRODUCT
#undef MATRIX_ROW_PINS
#undef MATRIX_COL_PINS
#undef DIODE_DIRECTION
/* USB Device descriptor parameter */
#define MANUFACTURER Mesh Industries
#define PRODUCT Atreus52 Treeboard
#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 }
#define MATRIX_COL_PINS { B2, B1, F7, F6, F5, F4, B6, D3, D2, D1, D0, D4, B3 }
#define DIODE_DIRECTION COL2ROW

View file

@ -1,88 +0,0 @@
#include QMK_KEYBOARD_H
// Layers
#define DVORAK 0
#define QWERTY 1
#define RAISE 2
#define LOWER 3
#define BDO 4
#define RESETL 5
#define KC_RAIS MO(RAISE)
#define KC_LOWR MO(LOWER)
#define KC_TGBD TG(BDO)
#define KC_TGRS TG(RESETL)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[DVORAK] = LAYOUT_kc(
NO, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, NO, \
NO, QUOT, COMM, DOT, P, Y, F, G, C, R, L, NO, \
NO, A, O, E, U, I, D, H, T, N, S, NO, \
NO, SCLN, Q, J, K, X, B, M, W, V, Z, NO, \
NO, TGBD, LALT, LCTL, LOWR, LSFT, BSPC, ENT, SPC, RAIS, LGUI, LEFT, RGHT, NO
),
[QWERTY] = LAYOUT_kc(
NO, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, NO, \
NO, Q, W, E, R, T, Y, U, I, O, P, NO, \
NO, A, S, D, F, G, H, J, K, L, SCLN, NO, \
NO, Z, X, C, V, B, N, M, COMM, DOT, SLSH, NO, \
NO, TGBD, LALT, LCTL, LOWR, LSFT, BSPC, ENT, SPC, RAIS, LGUI, LEFT, RGHT, NO
),
[RAISE] = LAYOUT_kc(
NO, MRWD, MPRV, MPLY, MNXT, MFFD, TRNS, MUTE, VOLD, VOLU, DEL, NO, \
NO, TILD, GRV, LCBR, RCBR, DQUO, QUOT, EQL, PLUS, MINS, QUES, NO, \
NO, ESC, TAB, LPRN, RPRN, BSLS, SLSH, LEFT, DOWN, UP, RGHT, NO, \
NO, TRNS, TRNS, LBRC, RBRC, TRNS, INS, PIPE, UNDS, TRNS, TRNS, NO, \
NO, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TGRS, NO
),
[LOWER] = LAYOUT_kc(
NO, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, NO, \
NO, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, NO, \
NO, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, NO, \
NO, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, DOT, TRNS, TRNS, TRNS, NO, \
NO, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, NO
),
[BDO] = LAYOUT_kc(
NO, ESC, 1, 2, 3, 4, 5, 0, SLSH, U, C, NO, \
NO, TAB, Q, W, E, R, 6, Y, I, O, P, NO, \
NO, LSFT, A, S, D, F, 7, G, H, J, K, NO, \
NO, T, Z, X, C, V, 8, B, N, M, L, NO, \
NO, LCTL, SPC, SPC, SPC, SPC, COMM, ENT, 9, NO, NO, NO, TGBD, NO
),
[RESETL] = LAYOUT(
KC_NO, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, \
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TG(RESETL),KC_NO
)
};
static uint8_t qw_dv_swap_state = 0;
bool process_record_user (uint16_t keycode, keyrecord_t *record) {
if (keycode == KC_LGUI) {
if (record->event.pressed) {
qw_dv_swap_state |= 0b00000001;
} else {
qw_dv_swap_state &= ~(0b00000001);
}
}
if (keycode == KC_LCTL) {
if (record->event.pressed) {
qw_dv_swap_state |= 0b00000010;
} else {
qw_dv_swap_state &= ~(0b00000010);
}
}
if (qw_dv_swap_state == 0b00000011) {
layer_invert(DVORAK);
}
return true;
}

View file

@ -1,4 +0,0 @@
NKRO_ENABLE = true
MOUSEKEY_ENABLE = no
EXTRAKEY_ENABLE = yes
CONSOLE_ENABLE = no

View file

@ -46,21 +46,6 @@
// This a shortcut to help you visually see your layout.
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, \
k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, \
k24, k25, k26, k27, k28, k29, k30, k31, k32, k33, k34, k35, \
k36, k37, k38, k39, k40, k41, k42, k43, k44, k45, k46, k47, \
k48, k49, k50, k51 \
) \
{ \
{ KC_NO, KC_NO, KC_##k26, KC_##k15, KC_##k28, KC_##k01, KC_##k42, KC_##k31, KC_##k20, KC_##k33, KC_NO, KC_NO }, \
{ KC_##k00, KC_NO, KC_##k14, KC_##k27, KC_##k16, KC_##k36, KC_##k47, KC_##k19, KC_##k32, KC_##k21, KC_NO, KC_##k11 }, \
{ KC_##k12, KC_##k25, KC_##k02, KC_##k39, KC_##k17, KC_##k49, KC_##k50, KC_##k18, KC_##k44, KC_##k09, KC_##k34, KC_##k23 }, \
{ KC_##k24, KC_##k13, KC_##k38, KC_##k04, KC_##k05, KC_##k48, KC_##k51, KC_##k06, KC_##k07, KC_##k45, KC_##k22, KC_##k35 }, \
{ KC_##k29, KC_##k41, KC_##k03, KC_##k40, KC_##k37, KC_NO, KC_##k30, KC_##k43, KC_##k08, KC_##k10, KC_##k46, KC_NO }, \
}
#define LAYOUT( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, \
k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, \

View file

@ -60,18 +60,5 @@
{ k06, k07, k08, k10, KC_NO, k05, k04, k03, k01, KC_NO } \
}
#define LAYOUT_kc_ortho_4x12( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, \
k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, \
k24, k25, k26, k27, k28, k29, k30, k31, k32, k33, k34, k35, \
k36, k37, k38, k39, k40, k41, k42, k43, k44, k45, k46, k47 \
) { \
{ KC_##k43, KC_##k45, KC_##k34, KC_##k11, KC_##k23, KC_##k40, KC_##k38, KC_##k25, KC_##k00, KC_##k12 }, \
{ KC_##k31, KC_##k44, KC_##k46, KC_##k35, KC_##k22, KC_##k28, KC_##k39, KC_##k37, KC_##k24, KC_##k13 }, \
{ KC_##k30, KC_##k32, KC_##k33, KC_##k47, KC_##k09, KC_##k29, KC_##k27, KC_##k26, KC_##k36, KC_##k02 }, \
{ KC_##k19, KC_##k20, KC_##k21, KC_##k42, KC_##k18, KC_##k16, KC_##k15, KC_##k14, KC_##k41, KC_##k17 }, \
{ KC_##k06, KC_##k07, KC_##k08, KC_##k10, KC_NO, KC_##k05, KC_##k04, KC_##k03, KC_##k01, KC_NO } \
}
#endif

View file

@ -60,18 +60,4 @@
{ KC_NO, k28, k14, k00, k45, k48, k13, k27, k44, KC_NO } \
}
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, \
k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, \
k28, k29, k31, k32, k33, k34, k35, k36, k37, k38, k41, k42, k43, k44, \
k45, k46, k47, k48 \
) \
{ \
{ KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k08, KC_##k09, KC_##k10, KC_##k11, KC_##k12 }, \
{ KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26 }, \
{ KC_##k29, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k37, KC_##k38, KC_##k41, KC_##k42, KC_##k43 }, \
{ KC_NO, KC_##k06, KC_##k20, KC_##k35, KC_##k46, KC_##k47, KC_##k36, KC_##k21, KC_##k07, KC_NO }, \
{ KC_NO, KC_##k28, KC_##k14, KC_##k00, KC_##k45, KC_##k48, KC_##k13, KC_##k27, KC_##k44, KC_NO } \
}
#endif

View file

@ -1,9 +0,0 @@
#define TAPPING_TERM 150
#define TAPPING_TOGGLE 2
#define MOUSEKEY_DELAY 200
#define MOUSEKEY_INTERVAL 60
#define MOUSEKEY_MAX_SPEED 50
#define MOUSEKEY_TIME_TO_MAX 80
#define MOUSEKEY_WHEEL_MAX_SPEED 8
#define MOUSEKEY_WHEEL_TIME_TO_MAX 15

View file

@ -1,119 +0,0 @@
#include QMK_KEYBOARD_H
enum chimera_ortho_layers
{
_BASE,
_NAV,
_SYM,
_FUNC,
_MOUSE
};
#define KC_NAV MO(_NAV)
#define KC_SYM MO(_SYM)
#define KC_FUNC MO(_FUNC)
#define KC_MOUSE TT(_MOUSE)
#define KC_DELSHFT SFT_T(KC_DEL)
#define KC_CTLENT CTL_T(KC_ENT)
#define KC_SYMSPC LT(_SYM, KC_SPC)
#define KC_WK_LEFT LCA(KC_LEFT)
#define KC_WK_DOWN LCA(KC_DOWN)
#define KC_WK_UP LCA(KC_UP)
#define KC_WK_RGHT LCA(KC_RGHT)
#define KC_QUAKE LCTL(KC_GRAVE)
#define LONGPRESS_DELAY 150
// These are needed because of the 'KC_'-adding macro
// This macro can be found in ../../chimera_ortho.h
#define KC_RESET RESET
#define KC_ KC_TRNS
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_kc(
//,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------.
LALT ,TAB ,QUOT ,COMM ,DOT ,P ,Y ,F ,G ,C ,R ,L ,SLSH ,FUNC
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
,LGUI ,ESC ,A ,O ,E ,U ,I ,D ,H ,T ,N ,S ,MINS ,MOUSE
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
,LCTL ,DELSHFT,SCLN ,Q ,J ,K ,X ,B ,M ,W ,V ,Z ,BSPC ,ENTER
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
,LSHIFT ,NAV ,SYMSPC ,CTLENT
//\-------------------------------+-------+-------+-------/ \-------+-------+---------------------------------------/
),
[_NAV] = LAYOUT_kc(
//,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------.
, , , , , , , ,HOME ,PGDOWN ,PGUP ,END , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, ,PSCR ,MENU , , , , , ,LEFT ,DOWN ,UP ,RIGHT , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, ,CAPS ,NLCK ,INS , , , , ,WK_LEFT,WK_DOWN,WK_UP ,WK_RGHT, ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,
//\-------------------------------+-------+-------+-------/ \-------+-------+---------------------------------------/
),
[_SYM] = LAYOUT_kc(
//,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------.
,QUAKE ,GRAVE ,TILDE ,BSLASH ,PIPE ,LPRN ,RPRN ,7 ,8 ,9 ,SLSH ,EQUAL ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , ,EXLM ,AT ,HASH ,DLR ,LCBR ,RCBR ,4 ,5 ,6 ,ASTR ,PLUS ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , ,PERC ,CIRC ,AMPR ,ASTR ,LBRC ,RBRC ,1 ,2 ,3 ,MINUS , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,0
//\-------------------------------+-------+-------+-------/ \-------+-------+---------------------------------------/
),
[_FUNC] = LAYOUT_kc(
//,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------.
,RESET ,SLEP ,MRWD ,MPLY ,MFFD , , ,F9 ,F10 ,F11 ,F12 , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , ,PWR ,MUTE ,VOLD ,VOLU , , ,F5 ,F6 ,F7 ,F8 , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , ,WAKE ,MPRV ,MPLY ,MNXT , , ,F1 ,F2 ,F3 ,F4 , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,
//\-------------------------------+-------+-------+-------/ \-------+-------+---------------------------------------/
),
[_MOUSE] = LAYOUT_kc(
//,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------.
, , , , , , , , , , , , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,BTN1 ,BTN3 ,BTN2 , , ,MS_L ,MS_D ,MS_U ,MS_R , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,ACL0 ,ACL1 ,ACL2 , , ,WH_L ,WH_D ,WH_U ,WH_R , ,
//|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------|
, , , ,
//\-------------------------------+-------+-------+-------/ \-------+-------+---------------------------------------/
),
};
// These control the color of the LED on the receiver
// For color reference, see ../../chimera_ortho.h
void matrix_scan_user(void) {
uint8_t layer = biton32(layer_state);
switch (layer) {
case _BASE:
set_led_cyan;
break;
case _NAV:
set_led_blue;
break;
case _SYM:
set_led_magenta;
break;
case _FUNC:
set_led_yellow;
default:
set_led_white;
break;
}
};

View file

@ -1,45 +0,0 @@
# DCompact Layout
**Dvorak, Layered, Mouse-Enabled, Compact -- Plover coming soon!?!~**
_See [the layout source](keymap.c) for the actual layout_
## Goals
The following are the goals kept in mind when designing the DCompact
layout:
- Provide minimal travel distance when typing English or coding
- Consistent muscle memory translation from standard QWERTY
- Stateless typing experience
- OS-agnostic features, macros, and key placement
- Minimize dependence on mouse usage
These are generally all met or balanced within reason. This layout is
not intended at all to be a familiar layout for much of anyone (except
maybe those who already type in Dvorak) -- this is meant to amplify the
best parts of having limited, ortholinear keys with layering.
## As Reference Material
If you're reading this hoping to find reference material to implement
your own layout, then please feel free to copy over this layout and
make edits where you see fit. I removed a lot of the features I felt
extraneous to my usage and simplified style where I felt needed. This
would hopefully mean that my code should feel like a good base to
develop from for those new to QMK.
_Remember that settings defined in the layout directory override and
merge with those in the keyboard folder_
## Relevant Links
- [Online Dvorak Layout Trainer](https://learn.dvorak.nl/)
- [Dvorak Wikipedia Page](https://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard)
- [QMK Docs](https://docs.qmk.fm/#/)
- [QMK KeyCode Reference](https://docs.qmk.fm/#/keycodes)
## Contact
Maintainer: [Dan](https://github.com/loksonarius)

View file

@ -1 +0,0 @@
MOUSEKEY_ENABLE = yes

View file

@ -1,363 +0,0 @@
// this is the style you want to emulate.
// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
#include QMK_KEYBOARD_H
#include "version.h"
#include "gordon.h"
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define CALTDEL LCTL(LALT(KC_DEL))
#define TSKMGR LCTL(LSFT(KC_ESC))
#define KC_SNAPLEFT LGUI(KC_LEFT)
#define KC_SNAPRIGHT LGUI(KC_RIGHT)
#define KC_SNAPUP LGUI(KC_UP)
#define KC_SNAPDOWN LGUI(KC_DOWN)
#define KC_PREVTAB LCTL(LSFT(KC_TAB))
#define KC_NEXTTAB LCTL(KC_TAB)
#define KC_WORKRIGHT LCTL(LGUI(KC_RIGHT))
#define KC_WORKLEFT LCTL(LGUI(KC_LEFT))
#define KC_NMPD TG(_NUMPAD)
#define KC_SYMB TG(_SYMBOLS)
#define KC_SCTL MT(MOD_LCTL, KC_LBRC)
#define KC_SCTR MT(MOD_LCTL, KC_RBRC)
#define KC_SPLT MT(MOD_LALT, KC_MINS)
#define KC_SPRT MT(MOD_LALT, KC_1)
#define KC_GBRC MT(MOD_RGUI, KC_8)
#define KC_GQOT MT(MOD_LGUI, KC_QUOT)
#define KC_CSHW MT(MOD_LCTL|MOD_LSFT,KC_W)
#define KC_CDEL LCTL(KC_DEL)
#define KC_AUDUP KC_AUDIO_VOL_UP
#define KC_AUDOWN KC_AUDIO_VOL_DOWN
#define KC_MEHS MEH_T(KC_S)
#define KC_MEHL MEH_T(KC_L)
#define KC_GWIN GUI_T(KC_G)
#define KC_FCTL CTL_T(KC_F)
#define KC_JCTL CTL_T(KC_J)
#define KC_ZCTL CTL_T(KC_Z)
#define KC_ALTV ALT_T(KC_V)
#define KC_ALTN ALT_T(KC_N)
#define KC_MEHX ALL_T(KC_X)
#define KC_RESET RESET
//LTs
#define KC_MESC LT(_MACROS, KC_ESC)
#define KC_DNUM LT(_NUMPAD, KC_D)
#define KC_SPFN LT(_NAV,KC_EQL)
#define KC_EMAUS LT(_MOUSE,KC_E)
#define KC_ENAV LT(_NAV,KC_E)
#define KC_INAV LT(_TEXTNAV,KC_I)
#define KC_BSPSYM LT(_SYMBOLS,KC_BSPACE)
#define KC_ENTSYM LT(_SYMBOLS,KC_ENTER)
#define KC_CLNMAUS LT(_MOUSE,KC_SCOLON)
#define KC_FUNC TT(_FUNCTION)
//TAP DANCE
#define KC_F6F7 TD(F6F7)
#define KC_ALF4 TD(ALTF4)
#define KC_TTT TD(TTT)
#define KC_ENHM TD(HOME_END)
#define KC_CLPS TD(CALC_PRINTSCREEN)
#define KC_INCL M(0)
#define KC_PULL M(1)
#define KC_PUSH M(2)
#define KC_SCAP M(3)
#define KC_SCOF M(4)
#define KC_CAD LALT(LCTL(KC_DEL))
#define LONGPRESS_DELAY 150
//#define LAYER_TOGGLE_DELAY 300
// Fillers to make layering more clear
#define KC_ KC_TRNS
/* TODO:
*
* DONE: RESET and CAD into macro layer.
* DONE: WINUP AND WINDOWN in NAV layer
* DONE: Get rid of caps layer. not sure what it is even for.
* DONE: LMEH
* DONE: plus, divide, multiply on left hand for num layer
* DONE: F1 - F12 on a layer toggle (not a temp toggle but a one shot or something)
* DONE: Volume, page up and down for mouse layer.
* DONE: Add full user files - without using anything.
* DONE: Insert, ctrl delete
* DONE: Home and End
* DONE: Printscreen
* Easier way to open new terminal (instead of alt + F2)
* Intellij/text navigation layer (ctrl delete could be here).
* Macro for "System.exit(0)" probably macro layer and "c"
* Some sort of tap dance for comma, H, right pinky, and possibly other corners.
* Something more with the right hand. not sure what.
* Mouse: Left scroll, right scroll
* Passwords and any other macros.
* LED for control
* All modifiers reset
* Russain layer
* Hebrew layer
* Get rid of stupid git pull and push macros.
*
*/
enum {
TTT = 4,
HOME_END,
CALC_PRINTSCREEN
};
static xtap ttt_state = {
.is_press_action = true,
.state = 0
};
//Already exists in gordon.c, shouldn't need this anymore
/*// To activate SINGLE_HOLD, you will need to hold for 200ms first.
// This tap dance favors keys that are used frequently in typing like 'f'
int cur_dance (qk_tap_dance_state_t *state) {
if (state->count == 1) {
if (state->interrupted) {
return SINGLE_TAP;
}
else {
if (!state->pressed) return SINGLE_TAP;
else return SINGLE_HOLD;
}
}
//If count = 2, and it has been interrupted - assume that user is trying to type the letter associated
//with single tap.
else if (state->count == 2) {
if (state->interrupted) return DOUBLE_SINGLE_TAP;
else if (state->pressed) return DOUBLE_HOLD;
else return DOUBLE_TAP;
}
else if ((state->count == 3) && ((state->interrupted) || (!state->pressed))) return TRIPLE_TAP;
else if (state->count == 3) return TRIPLE_HOLD;
else return 8; //magic number. At some point this method will expand to work for more presses
}*/
/* "Super tap toggle"
* Basically, TT but for two or more layers for a single key.
* This particular dance:
* Single tap/hold - TT for Function layer
* Double tap/hold - TT for Numpad layer
* Triple tap/hold - TT for Mouse layer
*
*/
void TTT_finished (qk_tap_dance_state_t *state, void *user_data) {
ttt_state.state = cur_dance(state);
switch (ttt_state.state) {
case SINGLE_TAP: layer_invert(_FUNCTION); break;
case SINGLE_HOLD: layer_on(_FUNCTION); break;
case DOUBLE_TAP: layer_invert(_NUMPAD); break;
case DOUBLE_HOLD: layer_on(_NUMPAD); break;
case DOUBLE_SINGLE_TAP: layer_invert(_NUMPAD); break;
case TRIPLE_TAP: layer_invert(_MOUSE); break;
case TRIPLE_HOLD: layer_on(_MOUSE); break;
}
}
void TTT_reset (qk_tap_dance_state_t *state, void *user_data) {
switch (ttt_state.state) {
case SINGLE_TAP: break;
case SINGLE_HOLD: layer_off(_FUNCTION); break;
case DOUBLE_TAP: break;
case DOUBLE_HOLD: layer_off(_NUMPAD); break;
case DOUBLE_SINGLE_TAP: break;
case TRIPLE_TAP: break;
case TRIPLE_HOLD: layer_off(_MOUSE); break;
}
ttt_state.state = 0;
}
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
MESC, Q ,CSHW,ENAV, R , T ,SPC , CLPS, Y , U ,INAV, O , P ,TTT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , A , MEHS,DNUM,FCTL,GWIN,GRAVE, TILD, H ,JCTL, K ,MEHL,CLNMAUS,ENHM,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
MINUS,ZCTL,MEHX, C ,ALTV, B ,DELETE, INS ,ALTN, M ,COMM,DOT ,SLSH,UNDS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSHIFT,BSPSYM, SPC ,ENTSYM
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_NUMPAD] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , ,ASTR, , , , , 7 , 8 , 9 ,ASTR,/**/,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,MINS,PLUS,/**/,EQUAL, , , , , 4 , 5 , 6 ,PLUS, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , ,SLSH, , , , , 1 , 2 , 3 ,SLSH, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , 0
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_SYMBOLS] = LAYOUT_kc(
//,----+----+-----+----+----+----+----. ,----+----+----+----+----+----+----.
,EXLM, AT ,LCBR,RCBR,HASH, , ,CIRC,AMPR,ASTR,LPRN,RPRN,/**/,
//|----+----+-----+----+----+----+----| |----+----+----+----+----+----+----|
,EXLM,EXLM,LPRN,RPRN , , , , ,DQUO,EQUAL,QUOTE,RCBR, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,DOLLAR, PERC,LBRACKET,RBRACKET, , , ,PIPE,BSLASH,PLUS, , , ,
//|----+----+-----+----+----+----+----| |----+----+----+----+----+----+----|
UNDS,/**/, ,/**/
// \-------------------+----+----+---/ \---+----+----+-------------------/
),
[_FUNCTION] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
F6F7 ,F1 ,F2 ,F3 ,ALF4,F5 ,F6 , F7 ,F8 ,F9 ,F10 ,F11 ,F12 ,/**/,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_NAV] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, ,SNAPLEFT,/**/,SNAPRIGHT,, , , , , UP , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,SNAPUP,PREVTAB, ,NEXTTAB,SNAPDOWN,, , ,LEFT,DOWN,RGHT, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, ,WORKLEFT, ,WORKRIGHT,, , , ,PGUP,PGDN, , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
CDEL ,DEL, ,
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_TEXTNAV] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , , , , , , , ,/**/, , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_MOUSE] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , ,MS_UP, , , , , , , UP , , , ,/**/
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, ,MS_LEFT,MS_DOWN,MS_RIGHT, , , , ,LEFT,DOWN,RGHT,/**/, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,MS_BTN1 ,MS_BTN2 ,
// \------------------+----+----+---/ \---+----+----+-------------------/
),
[_MACROS] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
/**/,RESET,SECRET_2,SECRET_3, , , ,SYSTEM_SLEEP, , ,INCL, , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
CAD ,SECRET_1, , , , , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
SCAP, , , , , , , , , , , , ,SCAP,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,
// \------------------+----+----+---/ \---+----+----+-------------------/
)
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
switch(id) {
/* include some kind of library or header */
case 0:
if (record->event.pressed) {
SEND_STRING("#include <>");
return MACRO( T(LEFT), END);
}
break;
case 1:
if (record->event.pressed) {
SEND_STRING("git pull");
return MACRO( T(ENT), END );
}
break;
case 2:
if (record->event.pressed){
SEND_STRING("git push");
return MACRO( T(ENT), END );
}
break;
case 3:
if (record->event.pressed){
// layer_on(_CAPS);
// register_code(KC_CAPSLOCK);
// unregister_code(KC_CAPSLOCK);
}
break;
case 4:
if (record->event.pressed){
// layer_off(_CAPS);
// register_code(KC_CAPSLOCK);
// unregister_code(KC_CAPSLOCK);
}
break;
}
return MACRO_NONE;
};
void matrix_scan_user(void) {
uint8_t layer = biton32(layer_state);
switch (layer) {
case _QWERTY:
set_led_green;
break;
case _MOUSE:
set_led_yellow;
break;
case _NUMPAD:
set_led_blue;
break;
case _SYMBOLS:
set_led_red;
break;
case _NAV:
set_led_magenta;
break;
case _MACROS:
set_led_green;
_delay_ms(45);
set_led_red;
_delay_ms(45);
break;
case _FUNCTION:
set_led_green;
_delay_ms(45);
set_led_blue;
_delay_ms(45);
break;
default:
set_led_green;
break;
}
};

View file

@ -18,16 +18,3 @@
{ R25, R24, R23, R22, R21, R20 }, \
{ KC_NO, KC_NO, R33, R32, R31, R30 } \
}
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, R30, R31, R32, R33 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##R30, KC_##R31, KC_##R32, KC_##R33 \
)

View file

@ -6,20 +6,6 @@
// This a shortcut to help you visually see your layout.
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11,\
k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25,\
k26, k27, k28, k29, k31, k32, k33, k34, k35, k36, k37, k38, k41, k42,\
k43, k44, k45, k46, k47, k48 \
) \
{ \
{ KC_##k13, KC_##k01, KC_##k26, KC_##k12, KC_##k00, KC_##k11, KC_##k25, KC_##k42, KC_##k10, KC_##k24}, \
{ KC_##k03, KC_##k28, KC_##k14, KC_##k02, KC_##k27, KC_##k41, KC_##k09, KC_##k23, KC_##k38, KC_##k08}, \
{ KC_##k31, KC_##k16, KC_##k04, KC_##k29, KC_##k15, KC_##k22, KC_##k37, KC_##k07, KC_##k21, KC_##k36}, \
{ KC_NO, KC_##k32, KC_##k17, KC_##k05, KC_##k43, KC_##k48, KC_##k06, KC_##k20, KC_##k35, KC_NO }, \
{ KC_NO, KC_##k45, KC_##k33, KC_##k18, KC_##k44, KC_##k47, KC_##k19, KC_##k34, KC_##k46, KC_NO }, \
}
#define LAYOUT( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11,\
k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25,\

View file

@ -75,94 +75,90 @@ enum custom_keycodes {
#define KC_CAD LCA(KC_DEL)
#define KC_RST RESET
// Fillers to make layering more clear
#define KC_ KC_TRNS
#define KC_XXXX KC_NO
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
CAEC, Q , W , E , R , T , Y , U , I , O , P ,DEL ,
KC_CAEC, KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_DEL ,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
CSTB, A , S , D , F , G ,LPRN, RPRN, H , J , K , L ,SCLN,BSPC,
KC_CSTB, KC_A , KC_S , KC_D , KC_F , KC_G ,KC_LPRN, KC_RPRN, KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B ,LBRC, RBRC, N , M ,COMM,DOT ,SLSH,QUOT,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B ,KC_LBRC, KC_RBRC, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
IMOF,LWR ,SPCT, ENSF,RSE ,IMON
KC_IMOF,KC_LWR ,KC_SPCT, KC_ENSF,KC_RSE ,KC_IMON
// +----+----+---/ \---+----+----+
),
[_LOWER] = LAYOUT_kc(
[_LOWER] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
,EXLM, AT ,HASH,DLR ,PERC, CIRC,AMPR,ASTR,LPRN,RPRN, ,
_______,KC_EXLM, KC_AT ,KC_HASH,KC_DLR ,KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,_______,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
, F1 , F2 , F3 , F4 , F5 , F6 , GRV ,BSLS,MINS,EQL ,LBRC,RBRC, ,
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_GRV ,KC_BSLS,KC_MINS,KC_EQL ,KC_LBRC,KC_RBRC,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, F7 , F8 , F9 , F10, F11, F12, TILD,PIPE,UNDS,PLUS,LCBR,RCBR, ,
_______, KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11, KC_F12, KC_TILD,KC_PIPE,KC_UNDS,KC_PLUS,KC_LCBR,KC_RCBR,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , ,
_______,_______,_______, _______,_______,_______
// +----+----+---/ \---+----+----+
),
[_RAISE] = LAYOUT_kc(
[_RAISE] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , ,
_______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,_______,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
, , , , , , , XXXX,LEFT,DOWN, UP ,RGHT,END , ,
_______,_______,_______,_______,_______,_______,_______, XXXXXXX,KC_LEFT,KC_DOWN, KC_UP ,KC_RGHT,KC_END ,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , HOME,XXXX,PGDN,PGUP,XXXX,XXXX, ,
_______,_______,_______,_______,_______,_______,_______, KC_HOME,XXXXXXX,KC_PGDN,KC_PGUP,XXXXXXX,XXXXXXX,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , ,
_______,_______,_______, _______,_______,_______
// +----+----+---/ \---+----+----+
),
[_PSEUDO_US] = LAYOUT_kc(
[_PSEUDO_US] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
CAEC, Q , W , E , R , T , Y , U , I , O , P ,DEL ,
KC_CAEC, KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_DEL ,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
CSTB, A , S , D , F , G ,JLPR, JRPR, H , J , K , L ,J2US,BSPC,
KC_CSTB, KC_A , KC_S , KC_D , KC_F , KC_G ,KC_JLPR, KC_JRPR, KC_H , KC_J , KC_K , KC_L ,KC_J2US,KC_BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B ,J2US, J2US, N , M ,COMM,DOT ,SLSH,J2US,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B ,KC_J2US, KC_J2US, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_J2US,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
IMOF,P_LW,SPCT, ENSF,P_RS,IMON
KC_IMOF,KC_P_LW,KC_SPCT, KC_ENSF,KC_P_RS,KC_IMON
// +----+----+---/ \---+----+----+
),
[_PSEUDO_US_LOWER] = LAYOUT_kc(
[_PSEUDO_US_LOWER] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
,EXLM,JAT ,HASH,DLR ,PERC, JCIR,JAMP,JAST,JLPR,JRPR, ,
_______,KC_EXLM,KC_JAT ,KC_HASH,KC_DLR ,KC_PERC, KC_JCIR,KC_JAMP,KC_JAST,KC_JLPR,KC_JRPR,_______,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
, F1 , F2 , F3 , F4 , F5 , F6 , JGRV,JBSL,MINS,JEQL,JLBR,JRBR, ,
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_JGRV,KC_JBSL,KC_MINS,KC_JEQL,KC_JLBR,KC_JRBR,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, F7 , F8 , F9 , F10, F11, F12, JTIL,JPIP,JUND,JPLU,JLCB,JRCB, ,
_______, KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11, KC_F12, KC_JTIL,KC_JPIP,KC_JUND,KC_JPLU,KC_JLCB,KC_JRCB,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , ,
_______,_______,_______, _______,_______,_______
// +----+----+---/ \---+----+----+
),
[_PSEUDO_US_RAISE] = LAYOUT_kc(
[_PSEUDO_US_RAISE] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , ,
_______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,_______,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
, , , , , ,JZHT, XXXX,LEFT,DOWN, UP ,RGHT,END , ,
_______,_______,_______,_______,_______,_______,KC_JZHT, XXXXXXX,KC_LEFT,KC_DOWN, KC_UP ,KC_RGHT,KC_END ,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , HOME,XXXX,PGDN,PGUP,XXXX,XXXX, ,
_______,_______,_______,_______,_______,_______,_______, KC_HOME,XXXXXXX,KC_PGDN,KC_PGUP,XXXXXXX,XXXXXXX,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , ,
_______,_______,_______, _______,_______,_______
// +----+----+---/ \---+----+----+
),
[_ADJUST] = LAYOUT_kc(
[_ADJUST] = LAYOUT(
//,----+----+----+----+----+----+ +----+----+----+----+----+----.
, , , , , , , , , , , ,
_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,
//|----+----+----+----+----+----+----+ +----+----+----+----+----+----+----|
, , , , , ,CAD , QWRT, , , , , , ,
_______,_______,_______,_______,_______,_______,KC_CAD , KC_QWRT,_______,_______,_______,_______,_______,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,RST , P_US, , , , , , ,
_______,_______,_______,_______,_______,_______,KC_RST , KC_P_US,_______,_______,_______,_______,_______,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , ,
_______,_______,_______, _______,_______,_______
// +----+----+---/ \---+----+----+
)

View file

@ -27,17 +27,4 @@
{ K300, K301, K302, K303, K304, K305, K305, K307, K308, K309, K310, K311 } \
}
#define LAYOUT_kc_ortho_4x12( \
K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, \
K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, \
K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, \
K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311 \
) \
LAYOUT_ortho_4x12( \
KC_##K000, KC_##K001, KC_##K002, KC_##K003, KC_##K004, KC_##K005, KC_##K006, KC_##K007, KC_##K008, KC_##K009, KC_##K010, KC_##K011, \
KC_##K100, KC_##K101, KC_##K102, KC_##K103, KC_##K104, KC_##K105, KC_##K106, KC_##K107, KC_##K108, KC_##K109, KC_##K110, KC_##K111, \
KC_##K200, KC_##K201, KC_##K202, KC_##K203, KC_##K204, KC_##K205, KC_##K206, KC_##K207, KC_##K208, KC_##K209, KC_##K210, KC_##K211, \
KC_##K300, KC_##K301, KC_##K302, KC_##K303, KC_##K304, KC_##K305, KC_##K306, KC_##K307, KC_##K308, KC_##K309, KC_##K310, KC_##K311 \
)
#endif

View file

@ -1,45 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
//#define USE_MATRIX_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#define SSD1306OLED
#define USE_SERIAL_PD2
#define PREVENT_STUCK_MODIFIERS
#define TAPPING_FORCE_HOLD
#define TAPPING_TERM 250
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 27
#define RGBLIGHT_LIMIT_VAL 120
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17

View file

@ -1,291 +0,0 @@
#include QMK_KEYBOARD_H
#include "bootloader.h"
#ifdef PROTOCOL_LUFA
#include "lufa.h"
#include "split_util.h"
#endif
#ifdef SSD1306OLED
#include "ssd1306.h"
#endif
#include "oled_helper.h"
extern keymap_config_t keymap_config;
extern uint8_t is_master;
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
enum layer_number {
_BASE = 0,
_LOWER,
_RAISE,
_ADJUST,
};
enum custom_keycodes {
LOWER = SAFE_RANGE,
RAISE,
ADJUST,
KANJI,
RGBRST
};
enum tapdances{
TD_CODO = 0,
// TD_MNUB,
};
// Layer Mode aliases
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC______ KC_TRNS
#define KC_XXXXX KC_NO
#define KC_KANJI KANJI
#define KC_RST RESET
#define KC_LRST RGBRST
#define KC_LTOG RGB_TOG
#define KC_LHUI RGB_HUI
#define KC_LHUD RGB_HUD
#define KC_LSAI RGB_SAI
#define KC_LSAD RGB_SAD
#define KC_LVAI RGB_VAI
#define KC_LVAD RGB_VAD
#define KC_LMOD RGB_MOD
#define KC_KNRM AG_NORM
#define KC_KSWP AG_SWAP
#define KC_TBSF LSFT_T(KC_TAB)
// #define KC_SPSF LSFT_T(KC_SPC)
#define KC_ALAP LALT_T(KC_APP)
#define KC_CODO TD(TD_CODO)
// #define KC_MNUB TD(TD_MNUB)
qk_tap_dance_action_t tap_dance_actions[] = {
[TD_CODO] = ACTION_TAP_DANCE_DOUBLE(KC_COMM, KC_DOT),
// [TD_MNUB] = ACTION_TAP_DANCE_DOUBLE(KC_MINS, LSFT(KC_RO)),
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, MINS,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
TBSF, A, S, D, F, G, H, J, K, L, UP, ENT,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LCTRL, Z, X, C, V, B, N, M, CODO, LEFT, DOWN, RGHT,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LGUI, LOWER, BSPC, SPC, RAISE, ALAP \
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
_____, F1, F2, F3, F4, F5, XXXXX, MINS, EQL, JYEN, LBRC, RBRC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
_____, F6, F7, F8, F9, F10, XXXXX, XXXXX, XXXXX, SCLN, QUOT, BSLS,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
_____, F11, F12, TAB, KANJI, ENT, XXXXX, XXXXX, COMM, DOT, SLSH, RO,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
_____, _____, DEL, _____, _____, APP \
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
_____, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, PSLS,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
_____, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, QUOT, 4, 5, 6, PPLS, PAST,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
_____, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, 0, 1, 2, 3, DOT, PMNS,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
_____, _____, BSPC, _____, _____, LALT \
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
_____, RST, LRST, KNRM, KSWP, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
//|------+-------+------+------+------+-----| |------+------+------+------+------+------|
_____, LTOG, LHUI, LSAI, LVAI, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, PGUP, XXXXX,\
//|------+-------+------+------+------+-----| |------+------+------+------+------+------|
_____, LMOD, LHUD, LSAD, LVAD, XXXXX, XXXXX, XXXXX, XXXXX, HOME, PGDN, END,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
_____, _____, XXXXX, _____, _____, XXXXX \
//`--------------------' `--------------------'
)
};
#define L_BASE _BASE
#define L_LOWER (1<<_LOWER)
#define L_RAISE (1<<_RAISE)
#define L_ADJUST (1<<_ADJUST)
#define L_ADJUST_TRI (L_ADJUST|L_RAISE|L_LOWER)
#ifdef SSD1306OLED
typedef struct {
uint8_t state;
char name[8];
}LAYER_DISPLAY_NAME;
#define LAYER_DISPLAY_MAX 5
const LAYER_DISPLAY_NAME layer_display_name[LAYER_DISPLAY_MAX] = {
{L_BASE, "Base"},
{L_BASE + 1, "Base"},
{L_LOWER, "Lower"},
{L_RAISE, "Raise"},
{L_ADJUST_TRI, "Adjust"}
};
static inline const char* get_leyer_status(void) {
for (uint8_t i = 0; i < LAYER_DISPLAY_MAX; ++i) {
if (layer_state == 0 && layer_display_name[i].state == default_layer_state) {
return layer_display_name[i].name;
} else if (layer_state != 0 && layer_display_name[i].state == layer_state) {
return layer_display_name[i].name;
}
}
return "?";
}
static char layer_status_buf[24] = "Layer state ready.\n";
static inline void update_keymap_status(void) {
snprintf(layer_status_buf, sizeof(layer_status_buf) - 1, "OS:%s Layer:%s\n",
keymap_config.swap_lalt_lgui? "win" : "mac", get_leyer_status());
}
static inline void render_keymap_status(struct CharacterMatrix *matrix) {
matrix_write(matrix, layer_status_buf);
}
#define UPDATE_KEYMAP_STATUS() update_keymap_status()
#define RENDER_KEYMAP_STATUS(a) render_keymap_status(a)
#else
#define UPDATE_KEYMAP_STATUS()
#define RENDER_KEYMAP_STATUS(a)
#endif
static inline void update_change_layer(bool pressed, uint8_t layer1, uint8_t layer2, uint8_t layer3) {
pressed ? layer_on(layer1) : layer_off(layer1);
IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2) ? layer_on(layer3) : layer_off(layer3);
}
int RGB_current_mode;
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
UPDATE_KEY_STATUS(keycode, record);
bool result = false;
switch (keycode) {
case LOWER:
update_change_layer(record->event.pressed, _LOWER, _RAISE, _ADJUST);
break;
case RAISE:
update_change_layer(record->event.pressed, _RAISE, _LOWER, _ADJUST);
break;
case KANJI:
if (record->event.pressed) {
if (keymap_config.swap_lalt_lgui == false) {
register_code(KC_LANG2);
} else {
SEND_STRING(SS_LALT("`"));
}
} else {
unregister_code(KC_LANG2);
}
break;
#ifdef RGBLIGHT_ENABLE
case RGB_MOD:
if (record->event.pressed) {
rgblight_mode(RGB_current_mode);
rgblight_step();
RGB_current_mode = rgblight_config.mode;
}
break;
case RGBRST:
if (record->event.pressed) {
eeconfig_update_rgblight_default();
rgblight_enable();
RGB_current_mode = rgblight_config.mode;
}
break;
#endif
default:
result = true;
break;
}
UPDATE_KEYMAP_STATUS();
return result;
}
void matrix_init_user(void) {
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_config.mode;
UPDATE_KEYMAP_STATUS();
#endif
//SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
iota_gfx_init(!has_usb()); // turns on the display
#endif
}
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
void matrix_scan_user(void) {
iota_gfx_task(); // this is what updates the display continuously
}
static inline void matrix_update(struct CharacterMatrix *dest,
const struct CharacterMatrix *source) {
if (memcmp(dest->display, source->display, sizeof(dest->display))) {
memcpy(dest->display, source->display, sizeof(dest->display));
dest->dirty = true;
}
}
static inline void render_status(struct CharacterMatrix *matrix) {
UPDATE_LED_STATUS();
RENDER_LED_STATUS(matrix);
RENDER_KEYMAP_STATUS(matrix);
UPDATE_LOCK_STATUS();
RENDER_LOCK_STATUS(matrix);
RENDER_KEY_STATUS(matrix);
}
void iota_gfx_task_user(void) {
struct CharacterMatrix matrix;
#if DEBUG_TO_SCREEN
if (debug_enable) {
return;
}
#endif
matrix_clear(&matrix);
if (is_master) {
render_status(&matrix);
} else {
RENDER_LOGO(&matrix);
}
matrix_update(&display, &matrix);
}
#endif

View file

@ -1,83 +0,0 @@
#ifdef SSD1306OLED
#include QMK_KEYBOARD_H
#include "ssd1306.h"
void render_logo(struct CharacterMatrix *matrix) {
const char logo_buf[]={
0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,
0};
matrix_write(matrix, logo_buf);
}
static char keylog_buf[24] = "Key state ready.";
const char code_to_name[60] = {
' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f',
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
'1', '2', '3', '4', '5', '6', '7', '8', '9', '0',
'R', 'E', 'B', 'T', ' ', '-', ' ', '@', ' ', ' ',
' ', ';', ':', ' ', ',', '.', '/', ' ', ' ', ' '};
void update_key_status(uint16_t keycode, keyrecord_t *record) {
if (!record->event.pressed) return;
char name = (keycode < 60) ? code_to_name[keycode] : ' ';
snprintf(keylog_buf, sizeof(keylog_buf) - 1, "Key:%dx%d %2x %c",
record->event.key.row, record->event.key.col,
(uint16_t)keycode, name);
}
void render_key_status(struct CharacterMatrix *matrix) {
matrix_write(matrix, keylog_buf);
}
static char lock_buf[24] = "Lock state ready.\n";
void update_lock_status(void) {
uint8_t leds = host_keyboard_leds();
char *num_lock = (leds & (1<<USB_LED_NUM_LOCK)) ? "Num" : "";
char *caps_lock = (leds & (1<<USB_LED_CAPS_LOCK)) ? "Caps" : "";
char *scrl_lock = (leds & (1<<USB_LED_SCROLL_LOCK)) ? "Scrn" : "";
snprintf(lock_buf, sizeof(lock_buf) - 1, "Lock:%s %s %s\n",
num_lock, caps_lock, scrl_lock);
}
void render_lock_status(struct CharacterMatrix *matrix) {
matrix_write(matrix, lock_buf);
}
#ifdef RGBLIGHT_ENABLE
extern rgblight_config_t rgblight_config;
static char led_buf[24] = "LED state ready.\n";
rgblight_config_t rgblight_config_bak;
void update_led_status(void) {
if (rgblight_config_bak.enable != rgblight_config.enable ||
rgblight_config_bak.mode != rgblight_config.mode ||
rgblight_config_bak.hue != rgblight_config.hue ||
rgblight_config_bak.sat != rgblight_config.sat ||
rgblight_config_bak.val != rgblight_config.val
) {
snprintf(led_buf, sizeof(led_buf) - 1, "LED%c:%2d hsv:%2d %2d %2d\n",
rgblight_config.enable ? '*' : '.', (uint8_t)rgblight_config.mode,
(uint8_t)(rgblight_config.hue / RGBLIGHT_HUE_STEP),
(uint8_t)(rgblight_config.sat / RGBLIGHT_SAT_STEP),
(uint8_t)(rgblight_config.val / RGBLIGHT_VAL_STEP));
rgblight_config_bak = rgblight_config;
}
}
void render_led_status(struct CharacterMatrix *matrix) {
matrix_write(matrix, led_buf);
}
#endif
#endif

View file

@ -1,35 +0,0 @@
#ifdef SSD1306OLED
void render_logo(struct CharacterMatrix *matrix);
void update_key_status(uint16_t keycode, keyrecord_t *record);
void render_key_status(struct CharacterMatrix *matrix);
void update_lock_status(void);
void render_lock_status(struct CharacterMatrix *matrix);
#define RENDER_LOGO(a) render_logo(a)
#define UPDATE_KEY_STATUS(a, b) update_key_status(a, b)
#define RENDER_KEY_STATUS(a) render_key_status(a)
#define UPDATE_LOCK_STATUS() update_lock_status()
#define RENDER_LOCK_STATUS(a) render_lock_status(a)
#ifdef RGBLIGHT_ENABLE
void update_led_status(void);
void render_led_status(struct CharacterMatrix *matrix);
#define UPDATE_LED_STATUS() update_led_status()
#define RENDER_LED_STATUS(a) render_led_status(a)
#else
#define UPDATE_LED_STATUS()
#define RENDER_LED_STATUS(a)
#endif
#else
#define RENDER_LOGO(a)
#define UPDATE_KEY_STATUS(a, b)
#define RENDER_KEY_STATUS(a)
#define UPDATE_LOCK_STATUS()
#define RENDER_LOCK_STATUS(a)
#define UPDATE_LED_STATUS()
#define RENDER_LED_STATUS(a)
#endif

View file

@ -1,32 +0,0 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = no # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # 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
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
SWAP_HANDS_ENABLE = no # Enable one-hand typing
TAP_DANCE_ENABLE = yes
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
Link_Time_Optimization = yes # if firmware size over limit, try this option
ifeq ($(strip $(Link_Time_Optimization)),yes)
EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization
endif
# If you want to change the display of OLED, you need to change here
SRC += ./lib/glcdfont.c \
oled_helper.c \

View file

@ -1,51 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
//#define USE_MATRIX_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#define SSD1306OLED
#define USE_SERIAL_PD2
#define TAPPING_FORCE_HOLD
#define TAPPING_TERM 100
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 27
#define RGBLIGHT_LIMIT_VAL 120
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17
#define BACKLIGHT_LEVELS 10
#undef PRODUCT
#define PRODUCT "Vee's hotswappable Helidox/Corne/CRKBD split keeb"
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION

View file

@ -1,242 +0,0 @@
#include QMK_KEYBOARD_H
#include "bootloader.h"
#ifdef PROTOCOL_LUFA
#include "lufa.h"
#include "split_util.h"
#endif
#ifdef SSD1306OLED
#include "ssd1306.h"
#endif
extern keymap_config_t keymap_config;
#ifdef RGBLIGHT_ENABLE
//Following line allows macro to read current RGB settings
extern rgblight_config_t rgblight_config;
#endif
extern uint8_t is_master;
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _ADJUST 3
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
ADJUST,
BACKLIT,
RGBRST
};
enum macro_keycodes {
KC_SAMPLEMACRO,
};
#define KC______ KC_TRNS
#define KC_XXXXX KC_NO
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC_RST RESET
#define KC_ERST EEPROM_RESET
#define KC_LRST RGBRST
#define KC_LTOG RGB_TOG
#define KC_LHUI RGB_HUI
#define KC_LHUD RGB_HUD
#define KC_LSAI RGB_SAI
#define KC_LSAD RGB_SAD
#define KC_LVAI RGB_VAI
#define KC_LVAD RGB_VAD
#define KC_LMOD RGB_MOD
#define KC_SFCPS SFT_T(KC_CAPS)
#define KC_CTLTB CTL_T(KC_TAB)
#define KC_GUIEI GUI_T(KC_LANG2)
#define KC_ALTKN ALT_T(KC_LANG1)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
SFCPS, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, ENT, SPC, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSPC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
SFCPS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, ENT,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, RSFT,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, ENT, SPC, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
TAB, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, DEL,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
SFCPS, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, MINS, EQL, LCBR, RCBR, PIPE, BSLS,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, XXXXX, VOLD, VOLU, MUTE, MPLY, UNDS, PLUS, LBRC, RBRC, SLSH, RSFT,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, ENT, SPC, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
RST, LRST, XXXXX, XXXXX, XXXXX, ERST, MNXT, MPRV, MFFD, MRWD, XXXXX, EJCT,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LTOG, LHUI, LSAI, LVAI, PGUP, HOME, LEFT, DOWN, UP, RIGHT, XXXXX, INS,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LMOD, LHUD, LSAD, LVAD, PGDN, END, BRID, BRIU, VOLD, VOLU, MUTE, MPLY,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, ENT, SPC, RAISE, ALTKN \
//`--------------------' `--------------------'
)
};
int RGB_current_mode;
// Setting ADJUST layer RGB back to default
void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
layer_on(layer3);
} else {
layer_off(layer3);
}
}
void matrix_init_user(void) {
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_config.mode;
#endif
//SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
iota_gfx_init(!has_usb()); // turns on the display
#endif
}
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
// When add source files to SRC in rules.mk, you can use functions.
const char *read_layer_state(void);
const char *read_logo(void);
void set_keylog(uint16_t keycode, keyrecord_t *record);
const char *read_keylog(void);
const char *read_keylogs(void);
// const char *read_mode_icon(bool swap);
// const char *read_host_led_state(void);
// void set_timelog(void);
// const char *read_timelog(void);
void matrix_scan_user(void) {
iota_gfx_task();
}
void matrix_render_user(struct CharacterMatrix *matrix) {
if (is_master) {
// If you want to change the display of OLED, you need to change here
matrix_write_ln(matrix, read_layer_state());
matrix_write_ln(matrix, read_keylog());
matrix_write_ln(matrix, read_keylogs());
//matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui));
//matrix_write_ln(matrix, read_host_led_state());
//matrix_write_ln(matrix, read_timelog());
} else {
matrix_write_ln(matrix, read_layer_state());
matrix_write_ln(matrix, read_keylog());
matrix_write_ln(matrix, read_keylogs());
//matrix_write(matrix, read_logo());
}
}
void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) {
if (memcmp(dest->display, source->display, sizeof(dest->display))) {
memcpy(dest->display, source->display, sizeof(dest->display));
dest->dirty = true;
}
}
void iota_gfx_task_user(void) {
struct CharacterMatrix matrix;
matrix_clear(&matrix);
matrix_render_user(&matrix);
matrix_update(&display, &matrix);
}
#endif//SSD1306OLED
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
#ifdef SSD1306OLED
set_keylog(keycode, record);
#endif
// set_timelog();
}
switch (keycode) {
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
case RGB_MOD:
#ifdef RGBLIGHT_ENABLE
if (record->event.pressed) {
rgblight_mode(RGB_current_mode);
rgblight_step();
RGB_current_mode = rgblight_config.mode;
}
#endif
return false;
break;
case RGBRST:
#ifdef RGBLIGHT_ENABLE
if (record->event.pressed) {
eeconfig_update_rgblight_default();
rgblight_enable();
RGB_current_mode = rgblight_config.mode;
}
#endif
break;
}
return true;
}

View file

@ -1,18 +0,0 @@
# Reade.md for what I want from my HeliDox(CRKBD) layout
======================================================
![My beloved HeliDox keeb](https://i.imgur.com/NbVAB3g.jpg)
- media keys and media controls
- in-switch LED intensity controls (+/-)
- underglow RGB hue/color controls
- underglow RGB intensity controls
- familiar key arrangement with Enter and symbols on the usual keys (to the right hand side)
- navigation keys should be the vim ones really;
- arrow keys on one layer(most likely on the ADJUST one)
See keymap.c for layouts
P.S> this lil' keeb is so addictive I have no words, really...

View file

@ -1,32 +0,0 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
EXTRAFLAGS += -flto
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
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
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
SWAP_HANDS_ENABLE = no # Enable one-hand typing
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# If you want to change the display of OLED, you need to change here
SRC += ./lib/glcdfont.c \
./lib/rgb_state_reader.c \
./lib/layer_state_reader.c \
./lib/logo_reader.c \
./lib/keylogger.c \
# ./lib/mode_icon_reader.c \
# ./lib/host_led_state_reader.c \
# ./lib/timelogger.c \

View file

@ -2,37 +2,37 @@
#include "rs.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
TAB , Q , W , E , R , T , Y , U , I , O , P ,EQL ,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
//|----+----+----+----+----+----| |----+----+----+----+----+----|
ESCC, A , S , D , F , G , H , J , K , L ,SCLN,QUOT,
KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
//|----+----+----+----+----+----+ |----+----+----+----+----+----|
LSFT, Z , X , C , V , B , N , M ,COMM,DOT ,SLSH,ENTS,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
LALT,LGUI,SPC , BSPC,CODE,FN
KC_LALT,KC_LGUI,KC_SPC , KC_BSPC,KC_CODE,KC_FN
// `----+----+----' `+---+----+----'c
),
[_CODE] = LAYOUT_kc(
[_CODE] = LAYOUT(
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
GRV ,EXLM, AT ,HASH, DLR,PERC, CIRC,LPLT,ASTR,RPGT,NEQL, ,
KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC, KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
//|----+----+----+----+----+----| |----+----+----+----+----+----|
, 1 , 2 , 3 , 4 , 5 , MINS,LBRC, UP ,RBRC, ,BSLS,
_______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
//|----+----+----+----+----+----+ |----+----+----+----+----+----|
, 6 , 7 , 8 , 9 , 0 , AMPR,LEFT,DOWN,RGHT, ,PIPE,
_______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
, ,DOT , , ,
_______,_______,KC_DOT , _______,_______,_______
// `----+----+----' `----+----+----'
),
[_FN] = LAYOUT_kc(
[_FN] = LAYOUT(
//,----+----+----+----+----+----. ,----+----+----+----+----+----.
, F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 , F10, F11,
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11,
//|----+----+----+----+----+----| |----+----+----+----+----+----|
LTOG,LHUI,LSAI,LVAI,LRST,BRMU, VOLU, ,PGUP, , , ,
KC_LTOG,KC_LHUI,KC_LSAI,KC_LVAI,KC_LRST,KC_BRMU, KC_VOLU,_______,KC_PGUP,_______,_______,_______,
//|----+----+----+----+----+----+ |----+----+----+----+----+----|
LMOD,LHUD,LSAD,LVAD,RST ,BRMD, VOLD,CTRA,PGDN,CTRE, , ,
KC_LMOD,KC_LHUD,KC_LSAD,KC_LVAD,KC_RST ,KC_BRMD, KC_VOLD,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
//`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
, , , MUTE, ,
_______,_______,_______, KC_MUTE,_______,_______
// `----+----+----' `----+----+----'
),
};

View file

@ -1,16 +0,0 @@
![the-frey-layout](https://raw.githubusercontent.com/the-frey/the-frey.github.com/master/assets/images/keyboard-layout.jpg)
# Keyboard layout by the-frey
This is a layout that allows access to all the paren keys easily, has a tab on the lower layer (for SUPER-TAB app switching) and some utility features like PGUP/PGDOWN and HOME/END.
In addition, the arrows are on the lower layer and are bound to the vim keys (h,j,k,l). I've found this a productive layout for programming in emacs and hopefully you will too.
The layout image above shows the keymap, with each key marked with all three layers:
- The top indicates the raise layer
- The middle indicates the default layer
- The bottom indicates the lower layer
All the keys respond as you'd expect to the 'shift' key - i.e. on a UK/GB keyboard, `/` becomes `?` and so on.

View file

@ -1,45 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
//#define USE_MATRIX_I2C
#define FORCE_NKRO
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#define SSD1306OLED
#define USE_SERIAL_PD2
#define TAPPING_FORCE_HOLD
#define TAPPING_TERM 100
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 27
#define RGBLIGHT_LIMIT_VAL 120
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17

View file

@ -1,243 +0,0 @@
#include QMK_KEYBOARD_H
#include "bootloader.h"
#ifdef PROTOCOL_LUFA
#include "lufa.h"
#include "split_util.h"
#endif
#ifdef SSD1306OLED
#include "ssd1306.h"
#endif
extern keymap_config_t keymap_config;
#ifdef RGBLIGHT_ENABLE
//Following line allows macro to read current RGB settings
extern rgblight_config_t rgblight_config;
#endif
extern uint8_t is_master;
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _ADJUST 3
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
ADJUST,
BACKLIT,
RGBRST
};
enum macro_keycodes {
KC_SAMPLEMACRO,
};
#define KC______ KC_TRNS
#define KC_XXXXX KC_NO
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC_RST RESET
#define KC_LRST RGBRST
#define KC_LTOG RGB_TOG
#define KC_LHUI RGB_HUI
#define KC_LHUD RGB_HUD
#define KC_LSAI RGB_SAI
#define KC_LSAD RGB_SAD
#define KC_LVAI RGB_VAI
#define KC_LVAD RGB_VAD
#define KC_LMOD RGB_MOD
#define KC_CTLTB CTL_T(KC_TAB)
#define KC_GUIEI GUI_T(KC_LANG2)
#define KC_ALTKN ALT_T(KC_LANG1)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, SPC, ENT, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
TAB, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, BSPC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, MUTE, VOLD, VOLU, PGUP, PGDN, LEFT, DOWN, UP, RIGHT, HOME, END,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LSFT, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, XXXXX,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, SPC, ENT, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
ESC, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, BSPC,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, MINS, EQL, LCBR, RCBR, PIPE, GRV,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LSFT, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, UNDS, PLUS, LBRC, RBRC, BSLS, TILD,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, SPC, ENT, RAISE, ALTKN \
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------.
RST, LRST, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LTOG, LHUI, LSAI, LVAI, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LMOD, LHUD, LSAD, LVAD, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, SPC, ENT, RAISE, ALTKN \
//`--------------------' `--------------------'
)
};
int RGB_current_mode;
// Setting ADJUST layer RGB back to default
void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
if (IS_LAYER_ON(layer1) && IS_LAYER_ON(layer2)) {
layer_on(layer3);
} else {
layer_off(layer3);
}
}
void matrix_init_user(void) {
#ifdef RGBLIGHT_ENABLE
RGB_current_mode = rgblight_config.mode;
#endif
//SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
iota_gfx_init(!has_usb()); // turns on the display
#endif
}
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
#ifdef SSD1306OLED
// When add source files to SRC in rules.mk, you can use functions.
const char *read_layer_state(void);
const char *read_logo(void);
void set_keylog(uint16_t keycode, keyrecord_t *record);
const char *read_keylog(void);
const char *read_keylogs(void);
// const char *read_mode_icon(bool swap);
// const char *read_host_led_state(void);
// void set_timelog(void);
// const char *read_timelog(void);
void matrix_scan_user(void) {
iota_gfx_task();
}
void matrix_render_user(struct CharacterMatrix *matrix) {
if (is_master) {
// If you want to change the display of OLED, you need to change here
matrix_write_ln(matrix, read_layer_state());
matrix_write_ln(matrix, read_keylog());
matrix_write_ln(matrix, read_keylogs());
//matrix_write_ln(matrix, read_mode_icon(keymap_config.swap_lalt_lgui));
//matrix_write_ln(matrix, read_host_led_state());
//matrix_write_ln(matrix, read_timelog());
} else {
matrix_write(matrix, read_logo());
}
}
void matrix_update(struct CharacterMatrix *dest, const struct CharacterMatrix *source) {
if (memcmp(dest->display, source->display, sizeof(dest->display))) {
memcpy(dest->display, source->display, sizeof(dest->display));
dest->dirty = true;
}
}
void iota_gfx_task_user(void) {
struct CharacterMatrix matrix;
matrix_clear(&matrix);
matrix_render_user(&matrix);
matrix_update(&display, &matrix);
}
#endif//SSD1306OLED
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (record->event.pressed) {
#ifdef SSD1306OLED
set_keylog(keycode, record);
#endif
// set_timelog();
}
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer_RGB(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
case RGB_MOD:
#ifdef RGBLIGHT_ENABLE
if (record->event.pressed) {
rgblight_mode(RGB_current_mode);
rgblight_step();
RGB_current_mode = rgblight_config.mode;
}
#endif
return false;
break;
case RGBRST:
#ifdef RGBLIGHT_ENABLE
if (record->event.pressed) {
eeconfig_update_rgblight_default();
rgblight_enable();
RGB_current_mode = rgblight_config.mode;
}
#endif
break;
}
return true;
}

View file

@ -1,31 +0,0 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = no # Mouse keys(+4700)
EXTRAKEY_ENABLE = no # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # 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
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
SWAP_HANDS_ENABLE = no # Enable one-hand typing
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# If you want to change the display of OLED, you need to change here
SRC += ./lib/glcdfont.c \
./lib/rgb_state_reader.c \
./lib/layer_state_reader.c \
./lib/logo_reader.c \
./lib/keylogger.c \
# ./lib/mode_icon_reader.c \
# ./lib/host_led_state_reader.c \
# ./lib/timelogger.c \

View file

@ -62,51 +62,51 @@ enum custom_keycodes {
#define KC_ALTDL ALT_T(KC_DEL)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
CTLTB, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
KC_CTLTB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
ALTSP, LOWER, GUIEN, SFTJP, RAISE, ALTDL
KC_ALTSP, KC_LOWER, KC_GUIEN, KC_SFTJP, KC_RAISE, KC_ALTDL
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc(
[_LOWER] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, ,
_______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
, HOME, END, PGDN, PGUP, F11, LEFT, DOWN, UP, RGHT, F12, PIPE,
_______, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_F11, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F12, KC_PIPE,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, ,
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
, , , , ,
_______, _______, _______, _______, _______, _______
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc(
[_RAISE] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, ,
_______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
, XXXXX, XXXXX, XXXXX, XXXXX, PSCR, GRV, MINS, PLUS, LCBR, RCBR, BSLS,
_______, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_PSCR, KC_GRV, KC_MINS, KC_PLUS, KC_LCBR, KC_RCBR, KC_BSLS,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, TILD, UNDS, EQL, LBRC, RBRC, ,
_______, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_TILD, KC_UNDS, KC_EQL, KC_LBRC, KC_RBRC, _______,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
, , , , ,
_______, _______, _______, _______, _______, _______
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc(
[_ADJUST] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
RST, LRST, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_RST, KC_LRST, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LTOG, LHUI, LSAI, LVAI, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LTOG, KC_LHUI, KC_LSAI, KC_LVAI, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LMOD, LHUD, LSAD, LVAD, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LMOD, KC_LHUD, KC_LSAD, KC_LVAD, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
GUIEI, LOWER, SPC, ENT, RAISE, ALTKN
KC_GUIEI, KC_LOWER, KC_SPC, KC_ENT, KC_RAISE, KC_ALTKN
//`--------------------' `--------------------'
)
};

View file

@ -31,8 +31,6 @@ enum custom_keycodes {
SCRL
};
#define KC______ KC_TRNS
#define KC_XXXXX KC_NO
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC_RST RESET
@ -57,51 +55,51 @@ enum custom_keycodes {
#define KC_SCRL SCRL
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
TAB, CTLA, S, D, F, G, H, J, K, L, CTLSC, QUOT,
KC_TAB, KC_CTLA, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_CTLSC, KC_QUOT,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
GRAVE, SFTZ, WINX, C, V, B, N, M, COMM, WINDO, SFTSL,BSLASH,
KC_GRAVE, KC_SFTZ, KC_WINX, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_WINDO, KC_SFTSL,KC_BSLASH,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc(
[_LOWER] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, XXXXX, PGDN, PSCR, PGUP, LBRC, RBRC, 7, 8, 9, XXXXX, XXXXX,
KC_ESC, XXXXXXX, KC_PGDN, KC_PSCR, KC_PGUP, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, XXXXXXX, XXXXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LCTRL, PLUS, MINS, EQL, LPRN, RPRN, 4, 5, 6, RCTRL, XXXXX,
XXXXXXX, KC_LCTRL, KC_PLUS, KC_MINS, KC_EQL, KC_LPRN, KC_RPRN, KC_4, KC_5, KC_6, KC_RCTRL, XXXXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LSFT, HOME, XXXXX, END, LCBR, RCBR, 1, 2, 3, RSFT, XXXXX,
XXXXXXX, KC_LSFT, KC_HOME, XXXXXXX, KC_END, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_RSFT, XXXXXXX,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, 0
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_0
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc(
[_RAISE] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, XXXXX, F7, F8, F9, F10, BTN2, BTN2, MNXT, MPRV, MPLY, MSTP,
KC_ESC, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_BTN2, KC_BTN2, KC_MNXT, KC_MPRV, KC_MPLY, KC_MSTP,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LCTRL, F4, F5, F6, F11, LEFT, DOWN, UP, RIGHT, RCTRL, XXXXX,
XXXXXXX, KC_LCTRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_RCTRL, XXXXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LSFT, F1, F2, F3, F12, XXXXX, XXXXX, VOLU, VOLD, MUTE, RSFT,
XXXXXXX, KC_LSFT, KC_F1, KC_F2, KC_F3, KC_F12, XXXXXXX, XXXXXXX, KC_VOLU, KC_VOLD, KC_MUTE, KC_RSFT,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc(
[_ADJUST] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
RST, LRST, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, RST,
KC_RST, KC_LRST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_RST,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LTOG, LHUI, LSAI, LVAI, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LTOG, KC_LHUI, KC_LSAI, KC_LVAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LMOD, LHUD, LSAD, LVAD, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LMOD, KC_LHUD, KC_LSAD, KC_LVAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
)
};

View file

@ -60,51 +60,51 @@ enum custom_keycodes {
#define KC_SCRL SCRL
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, BSPC,
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
TAB, CTLA, S, D, F, G, H, J, K, L, CTLSC, QUOT,
KC_TAB, KC_CTLA, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_CTLSC, KC_QUOT,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
GRAVE, SFTZ, WINX, C, V, B, N, M, COMM, WINDO, SFTSL,BSLASH,
KC_GRAVE, KC_SFTZ, KC_WINX, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_WINDO, KC_SFTSL,KC_BSLASH,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc(
[_LOWER] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, XXXXX, PGDN, PSCR, PGUP, LBRC, RBRC, 7, 8, 9, XXXXX, XXXXX,
KC_ESC, KC_XXXXX, KC_PGDN, KC_PSCR, KC_PGUP, KC_LBRC, KC_RBRC, KC_7, KC_8, KC_9, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LCTRL, PLUS, MINS, EQL, LPRN, RPRN, 4, 5, 6, RCTRL, XXXXX,
KC_XXXXX, KC_LCTRL, KC_PLUS, KC_MINS, KC_EQL, KC_LPRN, KC_RPRN, KC_4, KC_5, KC_6, KC_RCTRL, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LSFT, HOME, XXXXX, END, LCBR, RCBR, 1, 2, 3, RSFT, XXXXX,
KC_XXXXX, KC_LSFT, KC_HOME, KC_XXXXX, KC_END, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_RSFT, KC_XXXXX,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, 0
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_0
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc(
[_RAISE] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
ESC, XXXXX, F7, F8, F9, F10, BTN2, BTN2, MNXT, MPRV, MPLY, MSTP,
KC_ESC, KC_XXXXX, KC_F7, KC_F8, KC_F9, KC_F10, KC_BTN2, KC_BTN2, KC_MNXT, KC_MPRV, KC_MPLY, KC_MSTP,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LCTRL, F4, F5, F6, F11, LEFT, DOWN, UP, RIGHT, RCTRL, XXXXX,
KC_XXXXX, KC_LCTRL, KC_F4, KC_F5, KC_F6, KC_F11, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_RCTRL, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
XXXXX, LSFT, F1, F2, F3, F12, XXXXX, XXXXX, VOLU, VOLD, MUTE, RSFT,
KC_XXXXX, KC_LSFT, KC_F1, KC_F2, KC_F3, KC_F12, KC_XXXXX, KC_XXXXX, KC_VOLU, KC_VOLD, KC_MUTE, KC_RSFT,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
),
[_ADJUST] = LAYOUT_kc(
[_ADJUST] = LAYOUT(
//,-----------------------------------------. ,-----------------------------------------.
RST, LRST, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, RST,
KC_RST, KC_LRST, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_RST,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LTOG, LHUI, LSAI, LVAI, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LTOG, KC_LHUI, KC_LSAI, KC_LVAI, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------| |------+------+------+------+------+------|
LMOD, LHUD, LSAD, LVAD, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,
KC_LMOD, KC_LHUD, KC_LSAD, KC_LVAD, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LOWER, SPC, SCRL, MBTN1, ENT, RAISE
KC_LOWER, KC_SPC, KC_SCRL, KC_MBTN1, KC_ENT, KC_RAISE
//`--------------------' `--------------------'
)
};

View file

@ -25,39 +25,39 @@ enum custom_keycodes {
#define KC_RAISE RAISE
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc( \
[_QWERTY] = LAYOUT( \
//,-----------------------------------------. ,-----------------------------------------.
Q, W, E, R, T, ESC, DEL, Y, U, I, O, P,\
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_DEL, KC_Y, KC_U, KC_I, KC_O, KC_P,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
A, S, D, F, G, SPC, BSPC, H, J, K, L, SCLN,\
KC_A, KC_S, KC_D, KC_F, KC_G, KC_SPC, KC_BSPC, KC_H, KC_J, KC_K, KC_L, KC_SCLN,\
//|------+------+------+------+------+------| |------+------+------+------+------+------|
Z, X, C, V, B, TAB, ENT, N, M, COMM, DOT, SLSH,\
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TAB, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH,\
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
KC_LALT, KC_LGUI, KC_LCTL, KC_LSFT, KC_RAISE, KC_LOWER \
//`--------------------' `--------------------'
),
[_LOWER] = LAYOUT_kc( \
[_LOWER] = LAYOUT( \
//,-----------------------------------------. ,------------------------------------------.
1, 2, 3, 4, 5, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
KC_1, KC_2, KC_3, KC_4, KC_5, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,\
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
6, 7, 8, 9, 0, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
KC_6, KC_7, KC_8, KC_9, KC_0, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,\
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
EQL, PLUS, MINS, SLSH, ASTR, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
KC_EQL, KC_PLUS, KC_MINS, KC_SLSH, KC_ASTR, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,\
//|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
KC_LALT, KC_LGUI, KC_LCTL, KC_LSFT, KC_RAISE, KC_LOWER \
//`--------------------' `--------------------'
),
[_RAISE] = LAYOUT_kc( \
[_RAISE] = LAYOUT( \
//,-----------------------------------------. ,------------------------------------------.
EXLM, AT, HASH, DLR, PERC, LPRN, RPRN, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_LPRN, KC_RPRN, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,\
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
CIRC, AMPR, ASTR, QUOT, DQUO, LCBR, RCBR, LEFT, DOWN, UP, RIGHT, XXXXX,\
KC_CIRC, KC_AMPR, KC_ASTR, KC_QUOT, KC_DQUO, KC_LCBR, KC_RCBR, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_XXXXX,\
//|------+------+------+------+------+------| |-------+------+------+------+------+------|
BSLS, TILD, GRV, UNDS, PIPE, LBRC, RBRC, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX,\
KC_BSLS, KC_TILD, KC_GRV, KC_UNDS, KC_PIPE, KC_LBRC, KC_RBRC, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX, KC_XXXXX,\
//|------+------+------+------+------+------+------| |------+-------+------+------+------+------+------|
LALT, LGUI, LCTL, LSFT, RAISE, LOWER \
KC_LALT, KC_LGUI, KC_LCTL, KC_LSFT, KC_RAISE, KC_LOWER \
//`--------------------' `--------------------'
)
};

View file

@ -70,18 +70,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
{ KC_NO, KC_NO, KC_NO, R32, R31, R30 } \
}
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, R30, R31, R32 \
) \
LAYOUT_split_3x6_3( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##R30, KC_##R31, KC_##R32 \
)
// clang-format on
#define LAYOUT LAYOUT_split_3x6_3

View file

@ -44,25 +44,9 @@
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \
}
// Used to create a keymap using only KC_ prefixed keys
#define KC_KEYMAP( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \
) \
LAYOUT_plaid_grid( \
KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, \
KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, \
KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, \
KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b \
)
#define KEYMAP LAYOUT_plaid_grid
#define LAYOUT LAYOUT_plaid_grid
#define LAYOUT_ortho_4x12 LAYOUT_plaid_grid
#define LAYOUT_planck_mit LAYOUT_plaid_mit
#define LAYOUT_kc_ortho_4x12 KC_KEYMAP
#define KC_LAYOUT_ortho_4x12 KC_KEYMAP
#define LED_RED C5
#define LED_GREEN C4

View file

@ -10,18 +10,4 @@
#include "quantum.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
k01, k02, k03, k04, k05, k06, k07, k08, k09, k010, k011, k012, k013, k014, \
k11, k12, k13, k14, k15, k16, k17, k18, k19, k110, k111, k112, k113, k114, \
k21, k22, k23, k24, k25, k26, k27, k28, k29, k210, k211, k212, k213, k214, \
k31, k32, k33, k34, k35, k36, k37, k38, k39, k310, k311, k312, k313, k314 \
) \
{ \
{ KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k010, KC_##k011, KC_##k012, KC_##k013, KC_##k014 }, \
{ KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k110, KC_##k111, KC_##k112, KC_##k113, KC_##k114 }, \
{ KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k210, KC_##k211, KC_##k212, KC_##k213, KC_##k214 }, \
{ KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k310, KC_##k311, KC_##k312, KC_##k313, KC_##k314 } \
}
#endif

View file

@ -1,116 +0,0 @@
// Default ECO Layout
// KLE here : http://www.keyboard-layout-editor.com/#/gists/0733eca6b4cb88ff9d7de746803f4039
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _FN3 3
enum eco_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
};
// Fillers to make layering more clear
#define KC_ KC_TRNS
#define KC_RST RESET
#define KC_DBUG DEBUG
#define KC_LOWR MO(_LOWER)
#define KC_RASE MO(_RAISE)
#define KC_ENTS MT(MOD_LSFT, KC_ENT)
#define KC_ESCC MT(MOD_LCTL, KC_ESC)
#define KC_GRVF LT(_FN3, KC_GRV)
#define KC_CAPW LGUI(LSFT(KC_3)) // Capture whole screen
#define KC_CPYW LGUI(LSFT(LCTL(KC_3))) // Copy whole screen
#define KC_CAPP LGUI(LSFT(KC_4)) // Capture portion of screen
#define KC_CPYP LGUI(LSFT(LCTL(KC_4))) // Copy portion of screen
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----+----+----+----+----.
TAB , Q , W , E , R , T ,LPRN,RPRN, Y , U , I , O , P ,MINS,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
ESCC, A , S , D , F , G ,LBRC,RBRC, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B ,LCBR,RCBR, N , M ,COMM,DOT ,SLSH,ENTS,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
GRVF,LCTL,LALT,LGUI,LOWR,SPC ,SPC ,BSPC,BSPC,RASE,LEFT,DOWN, UP ,RGHT
//`----+----+----+----+----+----+----+----+----+----+----+----+----+----'
),
[_LOWER] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----+----+----+----+----.
, 1 , 2 , 3 , 4 , 5 ,LPRN,RPRN, 6 , 7 , 8 , 9 , 0 , ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
DEL ,CAPP,LEFT,RGHT, UP ,LBRC,LBRC,RBRC,RBRC, P4 , P5 , P6 ,PLUS,PIPE,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
,CPYP, , ,DOWN,LCBR,LCBR,RCBR,RCBR, P1 , P2 , P3 ,MINS, ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
, , , , , , ,DEL ,DEL , , P0 ,PDOT, ,
//`----+----+----+----+----+----+----+----+----+----+----+----+----+----'
),
[_RAISE] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----+----+----+----+----.
,EXLM, AT ,HASH,DLR ,PERC, , ,CIRC,AMPR,ASTR,LPRN,RPRN, ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
DEL ,MPRV,MNXT,VOLU,PGUP,UNDS, , ,EQL ,HOME, , , ,BSLS,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
MUTE,MSTP,MPLY,VOLD,PGDN,MINS, , ,PLUS,END , , , , ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
, , , , , , , , , , , , ,
//`----+----+----+----+----+----+----+----+----+----+----+----+----+----'
),
[_FN3] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----+----+----+----+----.
F12 , F1 , F2 , F3 , F4 , F5 , , , F6 , F7 , F8 , F9 ,F10 ,F11 ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
RTOG,RMOD,RHUI,RSAI,RVAI, , , , , , , , , ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
RST ,DBUG,RHUD,RSAD,RVAD, , , , , , , , , ,
//|----+----+----+----+----+----+----+----+----+----+----+----+----+----|
, , , , , , , , , , , , ,
//`----+----+----+----+----+----+----+----+----+----+----+----+----+----'
),
};
void persistant_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 QWERTY:
if (record->event.pressed) {
persistant_default_layer_set(1UL<<_QWERTY);
}
return false;
break;
}
return true;
}

View file

@ -1,22 +0,0 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
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
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend

View file

@ -5,19 +5,3 @@
#ifdef KEYBOARD_ergo42_rev1
#include "rev1.h"
#endif
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc_ortho_4x14( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##L06, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, KC_##R06, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##L16, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, KC_##R16, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##L26, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, KC_##R26, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, KC_##R36 \
)
#define LAYOUT_kc LAYOUT_kc_ortho_4x14

View file

@ -1,44 +1,11 @@
#ifndef ERGODASH_H
#define ERGODASH_H
#pragma once
#include "quantum.h"
#ifdef KEYBOARD_ergodash_rev1
#include "rev1.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##L06, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, KC_##R06, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##L16, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, KC_##R16, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##L26, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, KC_##R26, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, KC_##R36, \
KC_##L40, KC_##L41, KC_##L42, KC_##L43, KC_##L44, KC_##L45, KC_##L46, KC_##R40, KC_##R41, KC_##R42, KC_##R43, KC_##R44, KC_##R45, KC_##R46 \
)
#endif // #ifdef KEYBOARD_ergodash_rev1
#ifdef KEYBOARD_ergodash_mini
#include "mini.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##L06, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, KC_##R06, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##L16, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, KC_##R16, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##L26, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, KC_##R26, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, KC_##R36 \
)
#endif // #ifdef KEYBOARD_ergodash_mini
#endif

View file

@ -5,18 +5,3 @@
#endif
#include "quantum.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##L06, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, KC_##R06, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##L16, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, KC_##R16, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##L26, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, KC_##R26, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \
)

View file

@ -1,39 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
//#define USE_SERIAL
#define USE_I2C
/* Select hand configuration */
//#define MASTER_LEFT
#define MASTER_RIGHT
//#define EE_HANDS
#define TAPPING_TOGGLE 2
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8

View file

@ -1,179 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _COLEMAK 0
#define _QWERTY 1
#define _NUMPAD 2
#define _LOWER 3
#define _RAISE 4
#define _ADJUST 16
enum custom_keycodes {
COLEMAK = SAFE_RANGE,
QWERTY,
NUMPAD,
LOWER,
RAISE,
ADJUST,
};
#define KC_ KC_TRNS
#define KC_XXXX KC_NO
#define KC_CMK COLEMAK
#define KC_QWE QWERTY
#define KC_LOWR LOWER
#define KC_RASE RAISE
#define KC_QRAS QRAISE
#define KC_ADJT ADJUST
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
//#define KC_CATDEL LCTL(LALT(KC_DEL)) // Ctrl alt del
#define KC_CPY LCTL(KC_C)
#define KC_PST LCTL(KC_V)
#define KC_SELA LCTL(KC_A)
#define KC_UDO LCTL(KC_Z)
#define KC_CUT LCTL(KC_X)
#define KC_SVE LCTL(KC_S)
#define KC_OSH OSM(MOD_LSFT)
#define KC_OCTL OSM(MOD_LCTL)
#define KC_NUMP TT(_NUMPAD)
#define KC_SHESC MT(MOD_LSFT,KC_ESC)
#define KC_SHENT MT(MOD_RSFT,KC_ENT)
//#define KC_NUMP TG(_NUMPAD) // Toggle layer NUMPAD for use in KC_keymaps
//#define KC_RST RESET
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// Colemak Mod-DH is used. https://colemakmods.github.io/mod-dh/
[_COLEMAK] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , F , P , B ,LPRN, RPRN, J , L , U , Y ,SCLN,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
BSPC, A , R , S , T , G ,EQL , MINS, K , N , E , I , O ,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
SHESC, Z , X , C , D , V ,NUMP, ENT, M , H ,COMM,DOT ,SLSH,SHENT,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
OCTL,LALT,LGUI,DEL ,LOWR, SPC, OSH, RASE,LEFT,RIGHT,RALT,RCTL
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , Q , W , E , R , T ,LBRC, RBRC, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , A , S , D , F , G ,LPRN, RPRN, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , , , N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,DEL , , SPC, SPC , ,LEFT,DOWN, UP ,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NUMPAD] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , , , , , ,ASTR, P7 , P8 , P9 ,SLSH, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , ,PIPE, P4 , P5 , P6 ,MINS, ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , ,COMM, P1 , P2 , P3 ,PLUS, ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , P0 ,NLCK, , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_LOWER] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
,XXXX,XXXX,XXXX,XXXX,CAPS, , ,PGUP,HOME, UP ,END ,DEL , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,SELA,LALT,LSFT,LCTL,SVE , , ,PGDN,LEFT,DOWN,RGHT,BSPC,INS ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,UDO ,CUT ,CPY ,PST ,XXXX, , ,XXXX,XXXX,COMM,DOT ,SLSH, ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_RAISE] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
,AMPR,PERC,HASH,EXLM,LPRN, , ,ASTR,RPRN, AT ,DLR ,CIRC,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 7 , 5 , 3 , 1 , 9 ,LBRC, RBRC, 8 , 0 , 2 , 4 , 6 ,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, GRV,TILD,XXXX,EQL ,PLUS, , ,UNDS,MINS,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, F1 , F2 , F3 , F4 , F5 , F6, F7, F8, F9 ,F10 , F11, F12,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , CMK,QWE , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , ,VOLD,VOLU,MUTE
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case COLEMAK:
if (record->event.pressed) {
set_single_persistent_default_layer(_COLEMAK);
}
return false;
break;
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View file

@ -1,38 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
#define MASTER_LEFT
// #define MASTER_RIGHT
// #define EE_HANDS
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8

View file

@ -1,128 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _QWERTY 0
#define _LOWER 1
#define _RAISE 2
#define _ADJUST 16
enum custom_keycodes {
QWERTY = SAFE_RANGE,
LOWER,
RAISE,
ADJUST,
};
#define KC_ KC_TRNS
#define KC_LOWR LOWER
#define KC_RASE RAISE
#define KC_ADJT ADJUST
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , Q , W , E , R , T ,LBRC, RBRC, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , A , S , D , F , G , A, A, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_LOWER] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE, 1 , 2 , 3 , 4 , 5 , A, B, 6 , 7 , 8 , 9 , 0 ,DEL,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , F1 , F2 , F3 , F4 , F5 , F6 , D, Y ,MINS, EQL,LBRC,RBRC,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, F7 , F8 , F9 , F10, F11, F12, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_RAISE] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , 1 , 2 , 3 , 4 , 5 , A, B, 6 , 7 , 8 , 9 , 0 ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , Q , W , E , R , T , C , D, Y , U , I , O , P ,DEL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
ESC , F1 , F2 , F3 , F4 , F5 , F6, F7, F8, F9 ,F10 , F11, F12,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
TAB , Q , W , E , R , T , C , D, Y , U , I , O , P ,DEL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , A, SPC, N , M ,COMM,DOT ,SLSH,ENT ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
LCTL,LGUI,LALT,ADJT,LOWR,SPC, SPC, RASE,LEFT, UP ,DOWN,RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
set_single_persistent_default_layer(_QWERTY);
}
return false;
break;
case LOWER:
if (record->event.pressed) {
layer_on(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_LOWER);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case RAISE:
if (record->event.pressed) {
layer_on(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
} else {
layer_off(_RAISE);
update_tri_layer(_LOWER, _RAISE, _ADJUST);
}
return false;
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
return false;
break;
}
return true;
}

View file

@ -2,37 +2,37 @@
#include "rs.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
[_QWERTY] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , E , R , T , GRV, BSLS, Y , U , I , O , P ,EQL ,
KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_GRV, KC_BSLS, KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_EQL ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
ESCC, A , S , D , F , G ,PIPE, MINS, H , J , K , L ,SCLN,QUOT,
KC_ESCC, KC_A , KC_S , KC_D , KC_F , KC_G ,KC_PIPE, KC_MINS, KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LSFT, Z , X , C , V , B , SPC, BSPC, N , M ,COMM,DOT ,SLSH,ENTS,
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_SPC, KC_BSPC, KC_N , KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_ENTS,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
FN , ,LCTL,LALT,LGUI, SPC, BSPC, CODE,LEFT, UP ,DOWN,RIGHT
KC_FN ,_______,KC_LCTL,KC_LALT,KC_LGUI, KC_SPC, KC_BSPC, KC_CODE,KC_LEFT, KC_UP ,KC_DOWN,KC_RIGHT
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_CODE] = LAYOUT_kc(
[_CODE] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRV ,EXLM, AT ,HASH, DLR,PERC, , ,CIRC,LPLT,ASTR,RPGT,NEQL, ,
KC_GRV ,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC,_______, _______,KC_CIRC,KC_LPLT,KC_ASTR,KC_RPGT,KC_NEQL,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 1 , 2 , 3 , 4 , 5 , , ,MINS,LBRC, UP ,RBRC, ,BSLS,
_______, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 ,_______, _______,KC_MINS,KC_LBRC, KC_UP ,KC_RBRC,_______,KC_BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, 6 , 7 , 8 , 9 , 0 , DOT, ,AMPR,LEFT,DOWN,RGHT, ,PIPE,
_______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DOT, _______,KC_AMPR,KC_LEFT,KC_DOWN,KC_RGHT,_______,KC_PIPE,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______
//`----+----+----+----+----/----/ \----\----+----+----+----+----'
),
[_FN] = LAYOUT_kc(
[_FN] = LAYOUT(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, F1 , F2 , F3 , F4 , F5 , , , F6 , F7 , F8 , F9 , F10,F11 ,
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 ,_______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10,KC_F11 ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,BRMU, , , ,PGUP, , , ,
_______,_______,_______,_______,_______,_______,KC_BRMU, _______,_______,_______,KC_PGUP,_______,_______,_______,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , RST,BRMD, VOLU, ,CTRA,PGDN,CTRE, , ,
_______,_______,_______,_______,_______, KC_RST,KC_BRMD, KC_VOLU,_______,KC_CTRA,KC_PGDN,KC_CTRE,_______,_______,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , VOLD,MUTE, , , ,
_______,_______,_______,_______,_______,_______, KC_VOLD,KC_MUTE,_______,_______,_______,_______
//`----+----+----+----+----/----/ \----\----+----+----+----+----'
),
};

View file

@ -1,38 +0,0 @@
/*
Copyright 2017 Pierre Constantineau <jpconstantineau@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
/* Use I2C or Serial, not both */
#define USE_SERIAL
// #define USE_I2C
/* Select hand configuration */
//#define MASTER_LEFT
#define MASTER_RIGHT
// #define EE_HANDS
#undef RGBLED_NUM
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 26
#define RGBLIGHT_HUE_STEP 20
#define RGBLIGHT_SAT_STEP 20
#define RGBLIGHT_VAL_STEP 20
#define RGBLIGHT_LIMIT_VAL 220

View file

@ -1,326 +0,0 @@
#include "ergotravel.h"
#include "action_layer.h"
#include "eeconfig.h"
#include "mousekey.h"
#include "process_unicode.h"
extern keymap_config_t keymap_config;
#define _QWERTY 0
#define _NUMBERS 1
#define _SYMBOLS 2
#define _CODING 3
#define _NAVIGATION 4
#define _ADJUST 16
enum custom_keycodes {
QWERTY = SAFE_RANGE,
ADJUST,
CODING_SPACE,
NUMBERS_SPACE,
SYMBOLS_SPACE,
NAVIGATE_SPACE,
TABLE_FLIP,
RESET_TABLE,
SHRUG,
LOOK_OF_DISAPPROVAL
};
#define KC_ KC_TRNS
#define KC_ADJT MO(_ADJUST)
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
#define KC_RSEN MT(MOD_RSFT, KC_ENT) // Tap for enter, hold for right shift
#define KC_LCCA MT(MOD_LCTL, KC_CAPS) // Tap for caps lock, hold for left control
#define KC_SHDE MT(MOD_LSFT, KC_DEL) // Tap for delete, hold for left shift
#define KC_NAVI MO(_NAVIGATION)
#define KC_COSP CODING_SPACE
#define KC_NUSP NUMBERS_SPACE
#define KC_SYSP SYMBOLS_SPACE
#define KC_NASP NAVIGATE_SPACE
#define KC_FLIP TABLE_FLIP
#define KC_TSET RESET_TABLE
#define KC_SRUG SHRUG
#define KC_DISA LOOK_OF_DISAPPROVAL
#define KC_RST RESET
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
TAB , Q , W , E , R , T ,HOME, PGUP, Y , U , I , O , P ,BSPC,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
LCCA, A , S , D , F , G ,END , PGDN, H , J , K , L ,SCLN,QUOT,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
SHDE, Z , X , C , V , B ,LGUI, RALT, N , M ,COMM,DOT ,SLSH,RSEN,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
ESC ,ADJT,LALT,ENT ,NUSP,NASP, SYSP,COSP,RCTL,NAVI,ADJT,DEL
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NUMBERS] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE, 1 , 2 , 3 , 4 , 5 ,MPLY, VOLU, 6 , 7 , 8 , 9 , 0 , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,MNXT, VOLD,FLIP,TSET,SRUG,DISA, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_SYMBOLS] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
GRAVE,EXLM, AT ,HASH,DLR ,PERC,MPLY, VOLU,CIRC,AMPR,ASTR,LPRN,RPRN,BSLS,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , ,MNXT, VOLD, , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_CODING] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , ,LCBR,RCBR, ,MPLY, VOLU, ,AMPR,PIPE,DLR , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,LPRN,RPRN, ,MNXT, VOLD, ,UNDS,MINS,ASTR, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , ,LBRC,RBRC, , , , ,PLUS,EQL , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_NAVIGATION] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
, , , UP , , ,MPLY, VOLU,WH_U,BTN1,MS_U,BTN1, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, ,LEFT,DOWN,RGHT, ,MNXT, VOLD,WH_D,MS_L,MS_D,MS_R, , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
, , , , , , , , , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
),
[_ADJUST] = LAYOUT_kc(
//,----+----+----+----+----+----+----. ,----+----+----+----+----+----+----.
F1 ,F2 ,F3 ,F4 ,F5 ,F6 , , ,F7 ,F8 ,F9 ,F10 ,F11 ,F12 ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,RTOG,RVAI,RHUI,RSAI, , , , , , , , , ,
//|----+----+----+----+----+----+----| |----+----+----+----+----+----+----|
,RMOD,RVAD,RHUD,RSAD, , , ,RST , , , , , ,
//|----+----+----+----+----+----+----. .----+----+----+----+----+----+----|
, , , , , , , , , , ,
//`----+----+----+--+-+----/----/ \----\----+----+----+----+----'
)
};
#ifdef AUDIO_ENABLE
float tone_qwerty[][2] = SONG(QWERTY_SOUND);
#endif
void persistent_default_layer_set(uint16_t default_layer) {
eeconfig_update_default_layer(default_layer);
default_layer_set(default_layer);
}
uint16_t custom_lt_timer;
keypos_t prv_key_pressed;
// Runs just one time when the keyboard initializes.
void matrix_init_user(void) {
// set_unicode_input_mode(UC_LNX); // Linux
set_unicode_input_mode(UC_OSX); // Mac OSX
// set_unicode_input_mode(UC_WIN); // Windows (with registry key, see wiki)
//set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki)
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if(record->event.pressed) prv_key_pressed = record->event.key;
#define IS_KEYPOS_SAME(keyone,keytwo) ((keyone.col==keytwo.col)&&(keyone.row==keytwo.row))
#define ANOTHER_KEY_PRESSED (!IS_KEYPOS_SAME(prv_key_pressed, record->event.key))
inline void tap(uint16_t keycode) {
register_code(keycode);
unregister_code(keycode);
};
inline void swapInput(void) {
register_code(KC_LGUI);
tap(KC_SPC);
unregister_code(KC_LGUI);
};
switch (keycode) {
case QWERTY:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(tone_qwerty);
#endif
persistent_default_layer_set(1UL<<_QWERTY);
}
return false;
break;
case CODING_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_CODING);
} else {
layer_off(_CODING);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case NUMBERS_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_NUMBERS);
} else {
layer_off(_NUMBERS);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case SYMBOLS_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_SYMBOLS);
} else {
layer_off(_SYMBOLS);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case NAVIGATE_SPACE:
if (record->event.pressed) {
custom_lt_timer = timer_read();
layer_on(_NAVIGATION);
} else {
layer_off(_NAVIGATION);
if (timer_elapsed(custom_lt_timer)<150 && (!ANOTHER_KEY_PRESSED)) {
register_code(KC_SPC);
unregister_code(KC_SPC);
}
}
return false;
break;
case TABLE_FLIP:
if (record->event.pressed) {
swapInput();
register_code(KC_RSFT);
tap(KC_9);
unregister_code(KC_RSFT);
process_unicode((0x256F|QK_UNICODE), record); // Arm
process_unicode((0x00B0|QK_UNICODE), record); // Eye
process_unicode((0x25A1|QK_UNICODE), record); // Mouth
process_unicode((0x00B0|QK_UNICODE), record); // Eye
register_code(KC_RSFT);
tap(KC_0);
unregister_code(KC_RSFT);
process_unicode((0x256F|QK_UNICODE), record); // Arm
tap(KC_SPC);
process_unicode((0x0361|QK_UNICODE), record); // Flippy
tap(KC_SPC);
process_unicode((0x253B|QK_UNICODE), record); // Table
process_unicode((0x2501|QK_UNICODE), record); // Table
process_unicode((0x253B|QK_UNICODE), record); // Table
swapInput();
}
return false;
break;
case RESET_TABLE: // ┬──┬ ( ゜-゜ノ)
if (record->event.pressed) {
swapInput();
process_unicode((0x252C|QK_UNICODE), record); // Table
process_unicode((0x2500|QK_UNICODE), record); // Table
process_unicode((0x2500|QK_UNICODE), record); // Table
process_unicode((0x252C|QK_UNICODE), record); // Table
tap(KC_SPC);
process_unicode((0x30CE|QK_UNICODE), record); // Arm
register_code(KC_RSFT);
tap(KC_9);
unregister_code(KC_RSFT);
tap(KC_SPC);
process_unicode((0x309C|QK_UNICODE), record); // Eye
tap(KC_MINS);
process_unicode((0x309C|QK_UNICODE), record); // Eye
process_unicode((0x30CE|QK_UNICODE), record); // Arm
register_code(KC_RSFT);
tap(KC_0);
unregister_code(KC_RSFT);
swapInput();
}
return false;
break;
case SHRUG: // ¯\_(ツ)_/¯
if (record->event.pressed) {
swapInput();
process_unicode((0x00AF|QK_UNICODE), record); // Hand
tap(KC_BSLS); // Arm
register_code(KC_RSFT);
tap(KC_UNDS); // Arm
tap(KC_LPRN); // Head
unregister_code(KC_RSFT);
process_unicode((0x30C4|QK_UNICODE), record); // Face
register_code(KC_RSFT);
tap(KC_RPRN); // Head
tap(KC_UNDS); // Arm
unregister_code(KC_RSFT);
tap(KC_SLSH); // Arm
process_unicode((0x00AF|QK_UNICODE), record); // Hand
swapInput();
}
return false;
break;
case LOOK_OF_DISAPPROVAL: // ಠ_ಠ
if(record->event.pressed){
swapInput();
process_unicode((0x0CA0|QK_UNICODE), record); // Eye
register_code(KC_RSFT);
tap(KC_MINS);
unregister_code(KC_RSFT);
process_unicode((0x0CA0|QK_UNICODE), record); // Eye
swapInput();
}
return false;
break;
}
return true;
}

View file

@ -1,4 +0,0 @@
RGBLIGHT_ENABLE = yes
BACKLIGHT_ENABLE = no
UNICODE_ENABLE = yes

View file

@ -5,19 +5,3 @@
#endif
#include "quantum.h"
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, LT5, RT5, R30, R31, R32, R33, R34, R35, \
LT0, LT1, LT2, LT3, LT4, RT4, RT3, RT2, RT1, RT0 \
) \
LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##LT5, KC_##RT5, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, \
KC_##LT0, KC_##LT1, KC_##LT2, KC_##LT3, KC_##LT4, KC_##RT4, KC_##RT3, KC_##RT2, KC_##RT1, KC_##RT0 \
)

View file

@ -1,7 +1,7 @@
#include QMK_KEYBOARD_H
// lshift split, backspace split, full ANSI enter, full right shift
#define KEYMAP_BZIO( \
#define LAYOUT_BZIO( \
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K49, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \
@ -19,7 +19,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* 0: HHKB with hyper key where ctrl used to be, and right half of left
shift used as a key lock */
KEYMAP_BZIO(
LAYOUT_BZIO(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSLS, KC_GRV, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSPC,\
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,\
@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* 1: spacefn with WASD arrows/navigation block and extra space key for
realignment of source code, plus IJKL mouse arrows, volume up/down in <>,
and caps lock where it used to be */
KEYMAP_BZIO(
LAYOUT_BZIO(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_PGUP, KC_UP, KC_PGDOWN, KC_INSERT, KC_MS_BTN2, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, \
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_DELETE, KC_MS_BTN1, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_TRNS, \

View file

@ -18,19 +18,6 @@
{ k30, k31, k32, k33, k34, k35, km1, k36, k37, k38, k39, k3a, k3b } \
}
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, km0, km1, k36, k37, k38, k39, k3a, k3b \
) \
{ \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_NO, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_NO, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##km0, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##km1, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b } \
}
#define KC_ KC_TRNS
#endif

View file

@ -1,5 +0,0 @@
#pragma once
#define SOLENOID_ENABLE
#define SOLENOID_PIN F6
#define SOLENOID_ACTIVE true

View file

@ -1,56 +0,0 @@
#include QMK_KEYBOARD_H
#include "mtdjr.h"
extern keymap_config_t keymap_config;
#define KC_LOCK TD(TD_ALTLOCK)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_kc(
// ,----+-----+-----+-----+-----+-----, ,----+-----+-----+-----+-----+-----,
TAB, Q, W, E, R, T, Y, U, I, O, P, BSPC,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
LCTL, A, S, D, F, G, H, J, K, L, SCLN, QUOT,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
LSFT, Z, X, C, V, B, N, M, COMM, DOT, SLSH, ENT,
// |----+-----+-----+-----+-----+-----|-, ,-|----+-----+-----+-----+-----+-----|
LGUI, LOWR, SPC, SPC, RASE, LOCK
// `----+-----+-----` `----+-----+-----`
),
[_LOWER] = LAYOUT_kc(
// ,----+-----+-----+-----+-----+-----, ,----+-----+-----+-----+-----+-----,
ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, DEL,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
, , , , , , , , , LCBR, RCBR, BSLS,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
, , , XCPY, XINS, , , , , , , ,
// |----+-----+-----+-----+-----+-----|-, ,-|----+-----+-----+-----+-----+-----|
, , , , ,
// `----+-----+-----` `----+-----+-----`
),
[_RAISE] = LAYOUT_kc(
// ,----+-----+-----+-----+-----+-----, ,----+-----+-----+-----+-----+-----,
GRV, EXLM, AT, HASH, DLR, PERC, CIRC, AMPR, ASTR, LPRN, RPRN, DEL,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
, , , , MINS, EQL, , , UP, LBRC, RBRC, PIPE,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
, , , , , , , LEFT, DOWN, RGHT, , ,
// |----+-----+-----+-----+-----+-----|-, ,-|----+-----+-----+-----+-----+-----|
, , , , ,
// `----+-----+-----` `----+-----+-----`
),
[_ADJUST] = LAYOUT_kc(
// ,----+-----+-----+-----+-----+-----, ,----+-----+-----+-----+-----+-----,
STOG, xxxx, xxxx, xxxx, RST, xxxx, ROOT, PPLY, PSEF, xxxx, xxxx, CAD,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
SDM, SDP, SBOF, SBON, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx,
// |----+-----+-----+-----+-----+-----| |----+-----+-----+-----+-----+-----|
xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx, xxxx,
// |----+-----+-----+-----+-----+-----|-, ,-|----+-----+-----+-----+-----+-----|
xxxx, , xxxx, xxxx, , xxxx
// `----+-----+-----` `----+-----+-----`
)
};

View file

@ -1 +0,0 @@
TAP_DANCE_ENABLE = yes

View file

@ -21,22 +21,4 @@
{ KC_NO, KC_NO, KC_NO, RT1, RT2, RT3 }, \
}
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \
L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \
L20, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, R20, \
LT1, LT2, LT3, RT3, RT2, RT1 \
) \
{ \
{ KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05 }, \
{ KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15 }, \
{ KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25 }, \
{ KC_NO, KC_NO, KC_NO, KC_##LT1, KC_##LT2, KC_##LT3 }, \
{ KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05 }, \
{ KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15 }, \
{ KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25 }, \
{ KC_NO, KC_NO, KC_NO, KC_##RT1, KC_##RT2, KC_##RT3 }, \
}
#endif

View file

@ -16,18 +16,3 @@
{ k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b, k3c }, \
{ k40, k41, k42, k43, k44, k45, KC_NO, k47, k48, k49, k4a, k4b, k4c } \
}
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c \
) \
{ \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, KC_##k0c }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, KC_##k1c }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, KC_##k2c }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k35, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b, KC_##k3c }, \
{ KC_##k40, KC_##k41, KC_##k42, KC_##k43, KC_##k44, KC_##k45, KC_NO, KC_##k47, KC_##k48, KC_##k49, KC_##k4a, KC_##k4b, KC_##k4c } \
}

View file

@ -7,20 +7,4 @@
#include "proto.h"
#endif
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
LA1, LA2, LA3, LA4, LA5, LA6, RA1, RA2, RA3, RA4, RA5, RA6, RA7, \
LB1, LB2, LB3, LB4, LB5, LB6, RB1, RB2, RB3, RB4, RB5, RB7, \
LC1, LC2, LC3, LC4, LC5, LC6, RC1, RC3, RC4, RC5, RC6, RC7, \
LD1, LD2, LD3, LD4, LD5, RD1, RD4, RD5, RD6, RD7 \
) \
LAYOUT( \
KC_##LA1, KC_##LA2, KC_##LA3, KC_##LA4, KC_##LA5, KC_##LA6, KC_##RA1, KC_##RA2, KC_##RA3, KC_##RA4, KC_##RA5, KC_##RA6, KC_##RA7, \
KC_##LB1, KC_##LB2, KC_##LB3, KC_##LB4, KC_##LB5, KC_##LB6, KC_##RB1, KC_##RB2, KC_##RB3, KC_##RB4, KC_##RB5, KC_##RB7, \
KC_##LC1, KC_##LC2, KC_##LC3, KC_##LC4, KC_##LC5, KC_##LC6, KC_##RC1, KC_##RC3, KC_##RC4, KC_##RC5, KC_##RC6, KC_##RC7, \
KC_##LD1, KC_##LD2, KC_##LD3, KC_##LD4, KC_##LD5, KC_##RD1, KC_##RD4, KC_##RD5, KC_##RD6, KC_##RD7 \
)
#endif

View file

@ -1,68 +0,0 @@
# Default keymap
This keymap is to serve as an example of how you could make a multi-layer keymap.
#### keymap
```
[base] = LAYOUT_kc(
// ┌────────┬────────┬────────┐
DEL , SPC , ENT ,
// ├────────┼────────┼────────┼────────┼
LEFT , DOWN , UP , RGHT ,
// ├────────┼────────┼────────┼────────┼
SHRK , OGRE , TCP
// └────────┴────────┴────────┘
),
[shrek] = LAYOUT_kc(
// ┌────────┬────────┬────────┐
MPRV , MPLY , MNXT ,
// ├────────┼────────┼────────┼────────┼
BRID , VOLD , VOLU , BRIU ,
// ├────────┼────────┼────────┼────────┼
_______, _______, _______
// └────────┴────────┴────────┘
),
[ogre] = LAYOUT_kc(
// ┌────────┬────────┬────────┐
RGB_MOD, RGB_TOG, RGB_RMOD
// ├────────┼────────┼────────┼────────┼
F13 , F14 , F15 , F16 ,
// ├────────┼────────┼────────┼────────┼
_______, _______, _______
// └────────┴────────┴────────┘
),
[tcp] = LAYOUT_kc(
// ┌────────┬────────┬────────┐
WBAK , WREF , WFWD ,
// ├────────┼────────┼────────┼────────┼
XXXXXXX , PGDN , PGUP , XXXXXXX ,
// ├────────┼────────┼────────┼────────┼
_______, _______, _______
// └────────┴────────┴────────┘
),
```

View file

@ -16,7 +16,7 @@
// This a shortcut to help you visually see your layout.
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
#define KEYMAP( \
#define LAYOUT( \
k00, k01, k02, k03, k04, k05, k07, k08, k09, k0a, k0b, k0c, \
k10, k11, k12, k13, k14, k15, k17, k18, k19, k1a, k1b, k1c, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \

View file

@ -67,23 +67,3 @@ Right hand:
{K80, K81, K82, K83, K84, K85, K86, K87},\
{KC_NO, KC_NO, K92, K93, K94, K95, K96, K97}\
}
#define LAYOUT_kc(\
K00, K01, K02, K03, K04, K05, K06, K50, K51, K52, K53, K54, K55, K56, K57, \
K10, K11, K12, K13, K14, K15, K16, K60, K61, K62, K63, K64, K65, K66, K67, \
K20, K21, K22, K23, K24, K25, K71, K72, K73, K74, K75, K76, K77,\
K30, K31, K32, K33, K34, K35, K80, K81, K82, K83, K84, K85, K86, K87, \
K40, K41, K42, K43, K44, K45, K92, K93, K94, K95, K96, K97\
) {\
{KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_NO},\
{KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_NO},\
{KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_NO, KC_NO},\
{KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_NO, KC_NO},\
{KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_NO, KC_NO},\
{KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57},\
{KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_##K67},\
{KC_NO, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_##K77},\
{KC_##K80, KC_##K81, KC_##K82, KC_##K83, KC_##K84, KC_##K85, KC_##K86, KC_##K87},\
{KC_NO, KC_NO, KC_##K92, KC_##K93, KC_##K94, KC_##K95, KC_##K96, KC_##K97}\
}

View file

@ -50,15 +50,3 @@ extern uint8_t is_master; // 'is_master' will be obsolete, it is recommended to
{ R36, R30, R31, R32, R33, R34, R35 }, \
}
#endif
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, L36, R36, R30, R31, R32, R33, R34, R35 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \
)

View file

@ -127,42 +127,3 @@
#else
#error "expected HELIX_ROWS 3 or 4 or 5"
#endif
// Used to create a keymap using only KC_ prefixed keys
#if MATRIX_ROWS == 6 // HELIX_ROWS == 3
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25 \
)
#elif MATRIX_ROWS == 8 // HELIX_ROWS == 4
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \
)
#else // HELIX_ROWS == 5
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, R30, R31, R32, R33, R34, R35, \
L40, L41, L42, L43, L44, L45, R40, R41, R42, R43, R44, R45 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, \
KC_##L40, KC_##L41, KC_##L42, KC_##L43, KC_##L44, KC_##L45, KC_##R40, KC_##R41, KC_##R42, KC_##R43, KC_##R44, KC_##R45 \
)
#endif

View file

@ -99,32 +99,3 @@ extern uint8_t is_master; // 'is_master' will be obsolete, it is recommended to
}
#endif
#endif
// Used to create a keymap using only KC_ prefixed keys
#if MATRIX_ROWS == 8 // HELIX_ROWS == 4
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, L36, R36, R30, R31, R32, R33, R34, R35 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35 \
)
#else // HELIX_ROWS == 5
#define LAYOUT_kc( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, L34, L35, L36, R36, R30, R31, R32, R33, R34, R35, \
L40, L41, L42, L43, L44, L45, L46, R46, R40, R41, R42, R43, R44, R45 \
) LAYOUT( \
KC_##L00, KC_##L01, KC_##L02, KC_##L03, KC_##L04, KC_##L05, KC_##R00, KC_##R01, KC_##R02, KC_##R03, KC_##R04, KC_##R05, \
KC_##L10, KC_##L11, KC_##L12, KC_##L13, KC_##L14, KC_##L15, KC_##R10, KC_##R11, KC_##R12, KC_##R13, KC_##R14, KC_##R15, \
KC_##L20, KC_##L21, KC_##L22, KC_##L23, KC_##L24, KC_##L25, KC_##R20, KC_##R21, KC_##R22, KC_##R23, KC_##R24, KC_##R25, \
KC_##L30, KC_##L31, KC_##L32, KC_##L33, KC_##L34, KC_##L35, KC_##L36, KC_##R36, KC_##R30, KC_##R31, KC_##R32, KC_##R33, KC_##R34, KC_##R35, \
KC_##L40, KC_##L41, KC_##L42, KC_##L43, KC_##L44, KC_##L45, KC_##L46, KC_##R46, KC_##R40, KC_##R41, KC_##R42, KC_##R43, KC_##R44, KC_##R45 \
)
#endif

View file

@ -36,21 +36,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
{ KC_NO, K17, K27, K37, K47, K57, K67, K77, K87,KC_NO,KC_NO, KB7, KC7, KD7, KE7 } \
}
#define LAYOUT_kc( \
K04,K14,K24,K34,K44,K54,K16,KB6,KB7,K17,KA4,KB4,KC4,KD4,KE4,KD0, \
K03,K13,K23,K33,K43,K53,K26,KC6,KC7,K27,KA3,KB3,KC3, KD3,K67, \
K02,K12,K22,K32,K42,K52,K36,KD6,KD7,K37,KA2,KB2,KC2, KD2,K87, \
K01,K30,K11,K21,K31,K41,K51,K46,KE6,KE7,K47,KA1, KB1,K86,K77, \
K00,K10,K20, K40,K56,K50, K57,KB0,KC0,K96,K76,K66 \
) \
{ \
{ KC_##K00,KC_##K10,KC_##K20,KC_##K30,KC_##K40,KC_##K50, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KB0,KC_##KC0,KC_##KD0, KC_NO }, \
{ KC_##K01,KC_##K11,KC_##K21,KC_##K31,KC_##K41,KC_##K51, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA1,KC_##KB1, KC_NO, KC_NO, KC_NO }, \
{ KC_##K02,KC_##K12,KC_##K22,KC_##K32,KC_##K42,KC_##K52, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA2,KC_##KB2,KC_##KC2,KC_##KD2, KC_NO }, \
{ KC_##K03,KC_##K13,KC_##K23,KC_##K33,KC_##K43,KC_##K53, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA3,KC_##KB3,KC_##KC3,KC_##KD3, KC_NO }, \
{ KC_##K04,KC_##K14,KC_##K24,KC_##K34,KC_##K44,KC_##K54, KC_NO, KC_NO, KC_NO, KC_NO,KC_##KA4,KC_##KB4,KC_##KC4,KC_##KD4,KC_##KE4 }, \
{ KC_NO,KC_##K16,KC_##K26,KC_##K36,KC_##K46,KC_##K56,KC_##K66,KC_##K76,KC_##K86,KC_##K96, KC_NO,KC_##KB6,KC_##KC6,KC_##KD6,KC_##KE6 }, \
{ KC_NO,KC_##K17,KC_##K27,KC_##K37,KC_##K47,KC_##K57,KC_##K67,KC_##K77,KC_##K87, KC_NO, KC_NO,KC_##KB7,KC_##KC7,KC_##KD7,KC_##KE7 } \
}
#endif

View file

@ -28,20 +28,6 @@ inline void gh60_esc_led_off(void) { DDRF &= ~(1<<6); PORTF &= ~(1<<6); }
inline void gh60_wasd_leds_off(void) { DDRF &= ~(1<<7); PORTF &= ~(1<<7); }
*/
/* JD40 MKII keymap definition macro
*/
#define LAYOUT_kc( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \
K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \
K24, K25, K26, K27, K28, K29, K30, K31, K32, K33, K34, \
K35, K36, K37, K38, K39, K40, K41, K42, K43, K44 \
) { \
{ KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K10, KC_##K11, KC_##K12 }, \
{ KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_NO }, \
{ KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_NO }, \
{ KC_##K35, KC_##K36, KC_##K37, KC_##K38, KC_##K39, KC_NO, KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_NO } \
}
#define LAYOUT( \
K01, K02, K03, K04, K05, K06, K07, K08, K09, K10, K11, K12, \
K13, K14, K15, K16, K17, K18, K19, K20, K21, K22, K23, \

View file

@ -17,16 +17,4 @@
{ k30, k31, k32, k33, k34, KC_NO, k36, KC_NO, k38, k39, k3a, k3b, KC_NO } \
}
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k36, k38, k39, k3a, k3b \
) { \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, KC_##k0c }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, KC_NO }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, KC_NO }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_NO, KC_##k36, KC_NO, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b, KC_NO } \
}
#endif

View file

@ -1,80 +0,0 @@
#include QMK_KEYBOARD_H
#define KC_MO1 MO(1)
#define KC_MO2 MO(2)
#define KC_MO3 MO(3)
#define KC_LM4 LM(4, MOD_LSFT)
#define KC_MTCM MT(MOD_LCTL, KC_MINS)
#define KC_MTSG MT(MOD_LSFT, KC_GRV)
#define KC_MTSW MT(MOD_RSFT, KC_RGUI)
#define KC_MTSC MT(MOD_RSFT, KC_CAPS)
#define KC_MTCT MT(MOD_LCTL, KC_TAB)
#define KC_BLTG BL_TOGG
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_kc(
ESC, Q, W, F, P, G, J, L, U, Y, SCLN, QUOT, BSPC,
MTCT, A, R, S, T, D, H, N, E, I, O, ENT,
LSFT, Z, X, C, V, B, K, M, COMM, DOT, SLSH, MTSC,
MTSG, LGUI, LM4, MO2, MO1, SPC, MTSW, RALT, MO3, MTCM),
[1] = LAYOUT_kc(
TRNS, FN10, FN11, FN12, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, UP, DEL,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, HOME, PGUP, LEFT, RGHT,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, END, PGDN, DOWN, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),
[2] = LAYOUT_kc(
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, 7, 8, 9, 0, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, LBRC, 4, 5, 6, DOT, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, RBRC, 1, 2, 3, BSLS, TRNS,
TRNS, BLTG, TRNS, TRNS, TRNS, PAUSE, EQL, MINS, TRNS, TRNS),
[3] = LAYOUT_kc(
TRNS, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS),
[4] = LAYOUT_kc(
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, 7, 8, 9, 0, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, LBRC, 4, 5, 6, DOT, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, RBRC, 1, 2, 3, BSLS, TRNS,
TRNS, BLTG, TRNS, TRNS, TRNS, PAUSE, EQL, MINS, TRNS, TRNS),
};
enum macro_id
{
PSWD1,
PSWD2,
PSWD3,
};
const uint16_t PROGMEM fn_actions[] = {
[10] = ACTION_MACRO(PSWD1),
[11] = ACTION_MACRO(PSWD2),
[12] = ACTION_MACRO(PSWD3)
};
/*
* Macro definition
*/
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
switch (id)
{
case PSWD1:
return (record->event.pressed ? MACRO(I(0), T(1), T(2), T(3), T(4), T(5), T(6), T(7), T(8), T(ENT), END) : MACRO_NONE);
case PSWD2:
return (record->event.pressed ? MACRO(I(0), T(1), T(2), T(3), T(4), T(5), T(6), T(7), T(8), T(ENT), END) : MACRO_NONE);
case PSWD3:
return (record->event.pressed ? MACRO(I(0), T(1), T(2), T(3), T(4), T(5), T(6), T(7), T(8), T(ENT), END) : MACRO_NONE);
//case VOLUP:
// return (record->event.pressed ?
// MACRO( D(VOLU), U(VOLU), END ) :
// MACRO_NONE );
//case ALT_TAB:
// return (record->event.pressed ?
// MACRO( D(LALT), D(TAB), END ) :
// MACRO( U(TAB), END ));
}
return MACRO_NONE;
}

View file

@ -1,79 +0,0 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x6060
#define DEVICE_VER 0x0001
#define MANUFACTURER geekhack
#define PRODUCT JD45
/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 13
/* Planck PCB default pin-out */
#define MATRIX_ROW_PINS { F0, F1, F5, B4 }
#define MATRIX_COL_PINS { F4, D7, B5, B6, C6, C7, D4, D6, D5, D0, D1, D2, B0 }
#define UNUSED_PINS
#define BACKLIGHT_PIN B7
#define USB_MAX_POWER_CONSUMPTION 50
#define BACKLIGHT_BREATHING
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
#define BACKLIGHT_LEVELS 3
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
#endif

View file

@ -1,82 +0,0 @@
#include QMK_KEYBOARD_H
/* Mike's Layout for JD45 with backlight LEDs acting as layer indicator
*/
#define KC_TT2 TT(2)
#define KC_BLST BL_STEP
#define KC_BLTG BL_TOGG
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_kc(
TAB, Q, W, E, R, T, Y, U, I, O, P, MINS, BSLS,
FN1, A, S, D, F, G, H, J, K, L, QUOT, ENT,
FN0, Z, X, C, V, B, N, M, COMM, DOT, SLSH, RSFT,
NO, LCTL, LALT, LGUI, SPC, BSPC, APP, TT2, ESC, NO),
[1] = LAYOUT_kc(
GRV, TRNS, UP, TRNS, 7, 8, 9, 0, MINS, EQL, PSCR, LBRC, RBRC,
TRNS, LEFT, DOWN, RGHT, 4, 5, 6, INS, HOME, PGUP, SCLN, TRNS,
TRNS, TRNS, TRNS, TRNS, 1, 2, 3, DEL, END, PGDN, TRNS, TRNS,
TRNS, TRNS, TRNS, SPC, TRNS, DEL, TRNS, BLST, TRNS, TRNS),
[2] = LAYOUT_kc(
TRNS, TRNS, VOLU, TRNS, F7, F8, F9, F10, F11, F12, PSCR, BLST, BLTG,
TRNS, MPRV, VOLD, MNXT, F4, F5, F6, J, K, L, SCLN, TRNS,
TRNS, TRNS, TRNS, TRNS, F1, F2, F3, MUTE, MPRV, MNXT, MSTP, TRNS,
TRNS, TRNS, TRNS, LGUI, TRNS, TRNS, TRNS, TRNS, PAUS, TRNS)
/* ,
[3] = LAYOUT_kc(
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, BTLD, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS,
TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS )*/
};
enum macro_id
{
M_LAYER1,
M_LAYER2
};
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_MODS_TAP_TOGGLE(MOD_LSFT),
[1] = ACTION_MACRO(M_LAYER1)
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
// MACRODOWN only works in this function
switch (id)
{
case M_LAYER1:
// need to add a timer for doubletap: https://github.com/jackhumbert/qmk_firmware/wiki#timer-functionality
// action_function_tap may also handle this...
if (record->event.pressed)
{
breathing_period_set(3);
breathing_enable();
layer_on(1);
}
else
{
breathing_period_set(1);
breathing_self_disable();
layer_off(1);
}
break;
case M_LAYER2:
if (record->event.pressed)
{
breathing_period_set(2);
breathing_pulse();
layer_on(2);
}
else
{
breathing_period_set(1);
breathing_self_disable();
layer_off(2);
}
break;
}
return MACRO_NONE;
};

View file

@ -1,12 +0,0 @@
# Mike's JD45 standard layout
- Backlight that matches active layer
- Works with iPhone Camera Adapter
## Layers
Base for letters and mods.
Function 1 layer adds a centered numpad to the board
Function 2 layer replaces the numpad numbers with Fkeys.

View file

@ -1,17 +0,0 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = no # Console for debug(+400)
COMMAND_ENABLE = yes # 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
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend

View file

@ -63,20 +63,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
}
#define LAYOUT_kc( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \
) \
LAYOUT_ortho_4x12( \
KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b, \
KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b, \
KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b, \
KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b \
)
#define LAYOUT LAYOUT_planck_mit
#define LAYOUT_kc_ortho_4x12 LAYOUT_kc
#define KC_LAYOUT_ortho_4x12 LAYOUT_kc

View file

@ -1,49 +0,0 @@
/*
This is the c configuration file for the keymap
Copyright 2012 Jun Wako <wakojun@gmail.com>
Copyright 2015 Jack Humbert
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
// place overrides here
#define TAPPING_TERM 200
#ifdef MOUSEKEY_ENABLE
#undef MOUSEKEY_INTERVAL
#define MOUSEKEY_INTERVAL 5
#undef MOUSEKEY_TIME_TO_MAX
#define MOUSEKEY_TIME_TO_MAX 150
#undef MOUSEKEY_MAX_SPEED
#define MOUSEKEY_MAX_SPEED 3
#undef MOUSEKEY_MOVE_DELTA
#define MOUSEKEY_MOVE_DELTA 3
#undef MOUSEKEY_DELAY
#define MOUSEKEY_DELAY 0
#endif
#undef BACKLIGHT_LEVELS
#define BACKLIGHT_LEVELS 15
// #undef BACKLIGHT_LEVELS
// #define BACKLIGHT_BREATHING
// #undef BREATHING_PERIOD
// #define BREATHING_PERIOD 4

View file

@ -1,200 +0,0 @@
#include QMK_KEYBOARD_H
#define _QWERTY 0
#define _LOWER 3
#define _RAISE 4
#define _ADJUST 16
enum custom_keycodes {
LOWER = SAFE_RANGE,
RAISE,
ADJUST,
RGBRST
};
#define KC______ KC_TRNS
#define KC_XXXXX KC_NO
#define KC_KANJI KC_GRV
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC_ADJST ADJUST
#define KC_RST RESET
#define KC_LRST RGBRST
#define KC_LTOG RGB_TOG
#define KC_LHUI RGB_HUI
#define KC_LHUD RGB_HUD
#define KC_LSAI RGB_SAI
#define KC_LSAD RGB_SAD
#define KC_LVAI RGB_VAI
#define KC_LVAD RGB_VAD
#define KC_LMOD RGB_MOD
#define KC_BTOG BL_TOGG
#define KC_BINC BL_INC
#define KC_BDEC BL_DEC
// #define KC_BRTG BL_BRTG
#define KC_KNRM AG_NORM
#define KC_KSWP AG_SWAP
// Layer Mode aliases
// #define KC_L_LO MO(_LOWER)
// #define KC_L_RA MO(_RAISE)
// #define KC_L_AD MO(_ADJUST)
#define KC_TBSF LSFT_T(KC_TAB)
// #define KC_SPSF LSFT_T(KC_SPC)
// #define KC_GUAP LALT_T(KC_APP)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = KC_LAYOUT_ortho_4x12( \
//,-----------------------------------------------------------------------------------.
ESC, Q, W, E, R, T, Y, U, I, O, P, MINS,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
TBSF, A, S, D, F, G, H, J, K, L, SCLN, ENT,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
LSFT, Z, X, C, V, B, N, M, COMM, DOT, UP, RSFT,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
LCTRL, LALT, LGUI, ADJST, LOWER, BSPC, SPC, RAISE, APP, LEFT, DOWN, RGHT \
//|------+------+------+------+------+-------------+------+------+------+------+------|
),
[_LOWER] = KC_LAYOUT_ortho_4x12( \
//,-----------------------------------------------------------------------------------.
TAB, F1, F2, F3, F4, F5, XXXXX, MINS, EQL, JYEN, LBRC, RBRC,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
_____, F6, F7, F8, F9, F10, XXXXX, XXXXX, XXXXX, SCLN, QUOT, BSLS,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
_____, F11, F12, XXXXX, KANJI, ENT, XXXXX, XXXXX, COMM, DOT, SLSH, RO,\
//|------+------+------+------+------+-------------+------+------+------+------+------|
_____, _____, _____, _____, _____, DEL, _____, _____, _____, _____, _____, _____ \
//|------+------+------+------+------+-------------+------+------+------+------+------|
),
[_RAISE] = KC_LAYOUT_ortho_4x12( \
//,-----------------------------------------------------------------------------------.
_____, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
_____, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, 4, 5, 6, QUOT, PLUS,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
_____, XXXXX, XXXXX, XXXXX, XXXXX, XXXXX, 0, 1, 2, 3, DOT, SLSH,\
//|------+------+------+------+------+-------------+------+------+------+------+------|
_____, _____, _____, _____, _____, BSPC, _____, _____, _____, _____, _____, _____ \
//|------+------+------+------+------+-------------+------+------+------+------+------|
),
[_ADJUST] = KC_LAYOUT_ortho_4x12( \
//,-----------------------------------------------------------------------------------.
XXXXX, RST, LRST, KNRM, KSWP, XXXXX, XXXXX, WH_L, WH_U, HOME, PGUP, XXXXX,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
XXXXX, LTOG, LHUI, LSAI, LVAI, BTOG, BINC, WH_R, WH_D, END, PGDN, XXXXX,\
//|------+------+------+------+------+------|------+------+------+------+------+------|
XXXXX, LMOD, LHUD, LSAD, LVAD, XXXXX, BDEC, XXXXX, BTN1, BTN2, MS_U, XXXXX,\
//|------+------+------+------+------+-------------+------+------+------+------+------|
_____, _____, _____, _____, _____, XXXXX, XXXXX, _____, _____, MS_L, MS_D, MS_R \
//|------+------+------+------+------+-------------+------+------+------+------+------|
)
};
#ifdef BACKLIGHT_ENABLE
extern backlight_config_t backlight_config;
inline void enable_backright(bool on) {
backlight_config.enable = on;
if (backlight_config.raw == 1) // enabled but level = 0
backlight_config.level = 1;
eeconfig_update_backlight(backlight_config.raw);
// dprintf("backlight toggle: %u\n", backlight_config.enable);
backlight_set(backlight_config.enable ? backlight_config.level : 0);
}
uint8_t bl_breath_count;
uint8_t bl_breath_speed = 10;
int8_t bl_breath_updown = 1;
bool bl_breath_on;
backlight_config_t bl_breath_backup;
void bl_breath_start(uint8_t speed) {
bl_breath_on = true;
bl_breath_speed = speed;
bl_breath_backup = backlight_config;
}
void bl_breath_end(void) {
bl_breath_on = false;
backlight_config = bl_breath_backup;
eeconfig_update_backlight(backlight_config.raw);
backlight_set(backlight_config.enable ? backlight_config.level : 0);
}
void bl_breath_update(void) {
if (bl_breath_on) {
++bl_breath_count;
if (bl_breath_count > bl_breath_speed) {
bl_breath_count = 0;
backlight_config.level += bl_breath_updown;
bl_breath_updown = (backlight_config.level > BACKLIGHT_LEVELS) ? -1 :
(backlight_config.level <= 0) ? 1 :
bl_breath_updown;
enable_backright(true);
}
}
}
#define BL_BREATH_START bl_breath_start
#define BL_BREATH_END bl_breath_end
#define BL_BREATH_UPDATE bl_breath_update
#else
#define BL_BREATH_START(a)
#define BL_BREATH_END()
#define BL_BREATH_UPDATE()
#endif
// Loop
void matrix_scan_user(void) {
BL_BREATH_UPDATE();
}
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LOWER:
if (record->event.pressed) {
BL_BREATH_START(50);
layer_on(_LOWER);
} else {
BL_BREATH_END();
layer_off(_LOWER);
}
break;
case RAISE:
if (record->event.pressed) {
BL_BREATH_START(100);
layer_on(_RAISE);
} else {
BL_BREATH_END();
layer_off(_RAISE);
}
break;
case ADJUST:
if (record->event.pressed) {
layer_on(_ADJUST);
} else {
layer_off(_ADJUST);
}
break;
default:
return true;
}
return false;
}

View file

@ -1,5 +0,0 @@
MOUSEKEY_ENABLE = yes
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend

View file

@ -34,5 +34,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, XXX, k3B, XXX, k3D }, \
{ k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, XXX, k4A, k4B, k4C, k4D } \
}
#define KEYMAP_ANSI LAYOUT_60_ansi

View file

@ -43,16 +43,3 @@
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \
}
#define LAYOUT_kc_ortho_4x12( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \
) \
{ \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b } \
}

View file

@ -13,17 +13,3 @@
{ C1, C2, C3, C4 }, \
{ D1, D2, D3, D4 } \
}
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
A1, A2, A3, A4, \
B1, B2, B3, B4, \
C1, C2, C3, C4, \
D1, D2, D3, D4 \
) \
LAYOUT_ortho_4x4( \
KC_##A1, KC_##A2, KC_##A3, KC_##A4, \
KC_##B1, KC_##B2, KC_##B3, KC_##B4, \
KC_##C1, KC_##C2, KC_##C3, KC_##C4, \
KC_##D1, KC_##D2, KC_##D3, KC_##D4 \
)

View file

@ -1,6 +0,0 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include "../../config.h"
#endif

View file

@ -16,16 +16,4 @@
{ C10, C9, C8, C7, C6 } \
}
// Used to create a keymap using only KC_ prefixed keys
#define LAYOUT_kc( \
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, \
B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, \
C1, C2, C3, C4, C5, C6, C7, C8, C9, C10 \
) \
LAYOUT_ortho_3x10( \
KC_##A1, KC_##A2, KC_##A3, KC_##A4, KC_##A5, KC_##A6, KC_##A7, KC_##A8, KC_##A9, KC_##A10, \
KC_##B1, KC_##B2, KC_##B3, KC_##B4, KC_##B5, KC_##B6, KC_##B7, KC_##B8, KC_##B9, KC_##B10, \
KC_##C1, KC_##C2, KC_##C3, KC_##C4, KC_##C5, KC_##C6, KC_##C7, KC_##C8, KC_##C9, KC_##C10 \
)
#endif

View file

@ -1,3 +0,0 @@
#pragma once
#define TAPPING_TERM 150

View file

@ -1,106 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _BASE 0
#define _FN1 1
#define _FN2 2
#define _FN3 3
#define _FN4 4
#define _FN5 5
#define KC_ KC_TRNS
// Tap-Hold keys
#define KC_ASFT MT(MOD_LSFT, KC_A)
#define KC_F_L3 LT(_FN3, KC_F)
#define KC_ZCTL MT(MOD_LCTL, KC_Z)
#define KC_XALT MT(MOD_LALT, KC_X)
#define KC_CGUI MT(MOD_LGUI, KC_C)
#define KC_V_L4 LT(_FN4, KC_V)
#define KC_SPL2 LT(_FN2, KC_SPC)
#define KC_B_L1 LT(_FN1, KC_B)
#define KC_N_L5 LT(_FN5, KC_N)
#define KC_MALT MT(MOD_RALT, KC_M)
#define KC_BSCT MT(MOD_RCTL, KC_BSPC)
#define KC_ENTS MT(MOD_RSFT, KC_ENT)
#define KC_ESCS MT(MOD_RSFT, KC_ESC)
#define KC_SCNS MT(MOD_RSFT, KC_SCLN)
#define KC_GUIC LGUI(KC_C)
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
Q , W , E , R , T , Y , U , I , O , P ,
//|----+----+----+----+----+----+----+----+----+----|
ASFT, S , D ,F_L3, G , H , J , K , L ,ESCS,
//|----+----+----+----+----+----+----+----+----+----|
ZCTL,XALT,CGUI,V_L4,SPL2,B_L1,N_L5,MALT,BSCT,ENTS
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN1] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,
//|----+----+----+----+----+----+----+----+----+----|
F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,
//|----+----+----+----+----+----+----+----+----+----|
, , , ,BSPC, , , , ,
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN2] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,
//|----+----+----+----+----+----+----+----+----+----|
F11 ,F12 , , , ,LEFT,DOWN, UP ,RGHT,GRV ,
//|----+----+----+----+----+----+----+----+----+----|
, , , , ,DEL , , , ,
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN3] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
, , , , ,MINS,EQL ,LBRC,RBRC,BSLS,
//|----+----+----+----+----+----+----+----+----+----|
TAB , , , , ,COMM,DOT ,SLSH,SCLN,QUOT,
//|----+----+----+----+----+----+----+----+----+----|
, , , ,BSPC, ,LEFT,DOWN, UP ,RGHT
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN4] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
, , , , ,UNDS,PLUS,LCBR,RCBR,PIPE,
//|----+----+----+----+----+----+----+----+----+----|
TAB , , , , , LT , GT ,QUES,COLN,DQUO,
//|----+----+----+----+----+----+----+----+----+----|
, ,GUIC, ,BSPC, ,HOME,PGDN,PGUP,END
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN5] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
RTOG,RMOD, ,RST ,RHUI,RSAI,RVAI, , , ,
//|----+----+----+----+----+----+----+----+----+----|
, ,DBUG, ,RHUD,RSAD,RVAD, , , ,
//|----+----+----+----+----+----+----+----+----+----|
BL_S, ,GUIC, , , , , , ,
//`----+----+----+----+----+----+----+----+----+----'
)
};

View file

@ -1 +0,0 @@
RGBLIGHT_ENABLE = yes

View file

@ -1,10 +0,0 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include "../../config.h"
#define TAPPING_TERM 200
#define RETRO_TAPPING
#define PERMISSIVE_HOLD
#endif

View file

@ -1,105 +0,0 @@
#include QMK_KEYBOARD_H
extern keymap_config_t keymap_config;
#define _BASE 0
#define _FN1 1
#define _FN2 2
#define _FN3 3
#define _FN4 4
#define _FN5 5
#define KC_ KC_TRNS
// Tap-Hold keys
//#define KC_ASFT MT(MOD_LSFT, KC_A)
#define KC_F_L3 LT(_FN3, KC_F)
#define KC_ZCTL MT(MOD_LCTL, KC_Z)
#define KC_XALT MT(MOD_LALT, KC_X)
//#define KC_CGUI MT(MOD_LGUI, KC_C)
#define KC_V_L4 LT(_FN4, KC_V)
#define KC_SPL2 LT(_FN2, KC_SPC)
#define KC_B_L1 LT(_FN1, KC_B)
#define KC_N_L5 LT(_FN5, KC_N)
//#define KC_MALT MT(MOD_RALT, KC_M)
//#define KC_BSCT MT(MOD_RCTL, KC_BSPC)
#define KC_ENTS MT(MOD_RSFT, KC_ENT)
#define KC_BSCS MT(MOD_RSFT, KC_BSPC)
#define KC_GUIC LGUI(KC_C)
#define KC_RST RESET
#define KC_BL_S BL_STEP
#define KC_DBUG DEBUG
#define KC_RTOG RGB_TOG
#define KC_RMOD RGB_MOD
#define KC_RHUI RGB_HUI
#define KC_RHUD RGB_HUD
#define KC_RSAI RGB_SAI
#define KC_RSAD RGB_SAD
#define KC_RVAI RGB_VAI
#define KC_RVAD RGB_VAD
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
Q , W , E , R , T , Y , U , I , O , P ,
//|----+----+----+----+----+----+----+----+----+----|
A , S , D ,F_L3, G , H , J , K , L ,BSCS,
//|----+----+----+----+----+----+----+----+----+----|
ZCTL,XALT,C ,V_L4,B_L1,SPL2,N_L5,M ,DOT ,ENTS
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN1] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,
//|----+----+----+----+----+----+----+----+----+----|
F1 , F2 , F3 , F4 , F5 , F6 , F7 , F8 , F9 ,F10 ,
//|----+----+----+----+----+----+----+----+----+----|
, , , , ,BSPC, , , ,CAPS
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN2] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN,
//|----+----+----+----+----+----+----+----+----+----|
F11 ,F12 , , , , , , , ,GRV ,
//|----+----+----+----+----+----+----+----+----+----|
, , , ,DEL , , , , ,
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN3] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
ESC , , , , ,MINS,EQL ,LBRC,RBRC,BSLS,
//|----+----+----+----+----+----+----+----+----+----|
TAB , , , , ,COMM,DOT ,SLSH,SCLN,QUOT,
//|----+----+----+----+----+----+----+----+----+----|
, , , ,BSPC, ,LEFT,DOWN, UP ,RGHT
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN4] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
, , , , ,UNDS,PLUS,LCBR,RCBR,PIPE,
//|----+----+----+----+----+----+----+----+----+----|
TAB , , , , , LT , GT ,QUES,COLN,DQUO,
//|----+----+----+----+----+----+----+----+----+----|
, ,GUIC, ,BSPC, ,HOME,PGDN,PGUP,END
//`----+----+----+----+----+----+----+----+----+----'
),
[_FN5] = LAYOUT_kc(
//,----+----+----+----+----+----+----+----+----+----.
RTOG,RMOD, ,RST ,RHUI,RSAI,RVAI, , , ,
//|----+----+----+----+----+----+----+----+----+----|
, ,DBUG, ,RHUD,RSAD,RVAD, , , ,
//|----+----+----+----+----+----+----+----+----+----|
BL_S, ,GUIC, , , , , , ,
//`----+----+----+----+----+----+----+----+----+----'
)
};

View file

@ -1 +0,0 @@
RGBLIGHT_ENABLE = yes

View file

@ -1,11 +0,0 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
#include "../../config.h"
#define AUTO_SHIFT_TIMEOUT 150
#define NO_AUTO_SHIFT_SPECIAL
#define NO_AUTO_SHIFT_NUMERIC
#define USB_MAX_POWER_CONSUMPTION 50
#endif

Some files were not shown because too many files have changed in this diff Show more