1
0
Fork 0

Update keymap.c

This commit is contained in:
Steve Holt 2017-08-22 21:45:16 -06:00 committed by Jack Humbert
parent fe4549839e
commit d54360b1d8

View file

@ -13,6 +13,7 @@ extern keymap_config_t keymap_config;
#define _NINEKEY 6 #define _NINEKEY 6
#define _NAVIGAT 7 #define _NAVIGAT 7
#define _QWERTY 8 #define _QWERTY 8
#define _MLAYER 9
#define _GRVTABL 15 #define _GRVTABL 15
enum custom_keycodes { enum custom_keycodes {
@ -25,58 +26,65 @@ enum custom_keycodes {
NINEKEY, NINEKEY,
NAVIGAT, NAVIGAT,
QWERTY, QWERTY,
MLAYER,
GRVTABL, GRVTABL,
}; };
//TD Declarations //TD Declarations
enum { enum {
VOM = 0, VOM = 0,
PRN, PRN,
EGT, EGT,
HRD, HRD,
DSH, XRD,
QUT, DSH,
ESC, ESC,
EQE, EQE,
PGN, PGN,
UND, HND,
BSDEL, COD,
bsdel_mods, UND,
BOOTME, F11,
F12,
F13,
F14,
F15,
F16,
F17,
F18,
F19,
F20,
//unicode_inputctl
LINUX,
WIN,
WINSH,
OSX,
}; };
#define _______ KC_TRNS #define _______ KC_TRNS
#define XXXXXXX KC_NO #define XXXXXXX KC_NO
// action-TAP for key/mod behavior LT(layer, kc) // action-TAP for key/mod behavior LT(layer, KC)
#define XK_TAB LT(_FNCTION, KC_TAB) #define XK_TAB LT(_FNCTION, KC_TAB)
#define XK_BSP LT(_KAMELOC, M(3)) #define XK_BSP LT(_KAMELOC, KC_BSPC)
#define XK_APO LT(_KAMELOC, KC_QUOT)
#define XK_HARD LT(_FNCTION, M(1)) #define XK_SPC LT(_IKAPILA, KC_SPC)
#define XK_SPC LT(_IKAPILA, KC_SPC)
#define XK_ENT LT(_IKAPILA, KC_ENT) #define XK_ENT LT(_IKAPILA, KC_ENT)
#define XK_PGDN LT(_NAVIGAT, TD(PGN)) #define XK_PGDN LT(_IKASHFT, KC_PGDN)
#define XK_PREN LT(_IKASHFT, M(0)) #define XK_PGUP LT(_IKASHFT, KC_PGUP)
#define PIPBOY LT(_FNCTION, KC_BSLS) #define PIPBOY LT(_FNCTION, KC_BSLS)
#define XK_DEL LT(_IKASHFT, KC_DEL)
#define XK_DEL LT(_KAMELOC, KC_DEL)
#define XK_GRV LT(_GRVTABL, KC_GRV) #define XK_GRV LT(_GRVTABL, KC_GRV)
// mod-TAP for mod/key behavior MT(modkey, kc) // mod-TAP for mod/key behavior MT(modkey, KC)
#define ESC_IT MT(MOD_MEH, TD(ESC)) #define ALT_IT MT(MOD_RALT, KC_SCLN)
#define CTL_IT MT(MOD_RCTL, KC_DOT)
#define ALT_IT MT(MOD_LALT, KC_SCLN)
#define CTL_IT MT(MOD_LCTL, KC_SLSH)
#define XK_EGPT MT((MOD_LCTL | MOD_LALT | MOD_LGUI), M(2))
#define SFT_IT MT(MOD_RSFT, TG(_NAVIGAT))
#define SFT_ENT MT(MOD_RSFT, KC_ENT) #define SFT_ENT MT(MOD_RSFT, KC_ENT)
//sticky modifiers //sticky modifiers
#define KYCTL OSM(MOD_LCTL) #define KYCTL OSM(MOD_LCTL)
#define KYGUI OSM(MOD_LGUI)
#define KYSFT OSM(MOD_LSFT) #define KYSFT OSM(MOD_LSFT)
#define KYALT OSM(MOD_LALT)
#define CAKY OSM(MOD_LCTL | MOD_LALT) #define CAKY OSM(MOD_LCTL | MOD_LALT)
//shortcuts //shortcuts
@ -97,12 +105,8 @@ enum {
#define NAVGL LGUI(KC_LEFT) #define NAVGL LGUI(KC_LEFT)
#define NAVGR LGUI(KC_RGHT) #define NAVGR LGUI(KC_RGHT)
#define KC_NDSH LCTL(KC_PMNS) #define KC_NDSH LCTL(KC_PMNS)
#define KC_MDSH LALT(LCTL(KC_PMNS)) #define KC_MDSH LALT(LCTL(KC_PMNS))
//!not sure if this old TMK code will work
//#define BOOTME ACTION_FUNCTION(BOOTLOADER)
#define LCLEAR ACTION_LAYER_SET_CLEAR(0)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@ -113,9 +117,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
BKSP A R S T G M N E I O ' BKSP A R S T G M N E I O '
OSFT X C D V Z K H , . / LNAV OSFT X C D V Z K H , . /
OCTLOALTL9KY [] OGUISPC ENT PGDN () {} \ ` OCTLGUI ESC ALT PGUPSPC ENT PGDN () {} \ `
HOLD HOLD
@ -125,80 +129,85 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
SFT CTL SFT SFT CTL SFT
CTL ALT L9KYL!@#GUI L123 L123LNAVL!@#MEH L FNLGRV CTL GUI ESC ALT L!@#L123 L123L!@#L M L FNLGRV
DOUBLETAP DOUBLETAP
!F4
OSML UNDO OSML
OSMLOSMLESC OSML PGUP OSMLOSML!F4
Switch type Switch type
Br Z Z Z Z Z Z Z Z Z Br G Br mxC Z Z Z Z Z Z Z Z Br G
G Z Z Z Z Z Z Z Z Z Z Z G Z Z Z Z Z Z Z Z Z Z Z
Y Z Z Z Z Z Z Z Z Z B Y Y Z Z Z Z Z Z Z Z B B Y
Y Y C Z BLK BLK BLK BLK Z Z B G Y Y mxC Z BLK BLK BLK BLK Z Z B G
with DCS keycaps
Top Row R1 (reversed?)
M Row1 R3 (with reversed pointer finger)
M Row2 R4
B Row R2 (reversed)
*/ */
// Colemak PB&J (Mod-DH) // Colemak PB&J (Mod-DH)
[_COLEMAK] = KEYMAP( \ [_COLEMAK] = KEYMAP( \
XK_TAB, TD(QUT), KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, ALT_IT, XK_GRV, \ XK_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, ALT_IT, XK_DEL, \
XK_BSP, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, XK_DEL, \ XK_BSP, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, XK_APO, \
KYSFT, KC_X, KC_C, KC_D, KC_V, TD(UND), KC_K, KC_H, KC_COMM, KC_DOT, CTL_IT, SFT_IT, \ KYSFT, KC_X, KC_C, KC_D, KC_V, KC_Z, KC_K, KC_H, TD(COD), KC_DOT, CTL_IT, SFT_T(KC_SLSH), \
KYCTL, KYALT, ESC_IT, XK_HARD, KYGUI, XK_SPC, XK_ENT, XK_PGDN, XK_PREN, XK_EGPT, PIPBOY, XK_GRV \ KYCTL, KC_LGUI, TD(ESC), KC_LALT, XK_PGUP, XK_SPC, XK_ENT, XK_PGDN, MO(_MLAYER), TT(_NAVIGAT), PIPBOY, XK_GRV \
), ),
// useful for one-handed typing // useful for one-handed typing
[_KAMELOC] = KEYMAP( \ [_KAMELOC] = KEYMAP( \
_______, KC_SCLN, KC_Y, KC_U, KC_L, KC_J, KC_B, KC_P, KC_F, KC_W, TD(QUT), _______, \ XK_DEL, KC_SCLN, KC_Y, KC_U, KC_L, KC_J, KC_B, KC_P, KC_F, KC_W, KC_Q, XK_TAB, \
_______, KC_O, KC_I, KC_E, KC_N, KC_M, KC_G, KC_T, KC_S, KC_R, KC_A, _______, \ _______, KC_O, KC_I, KC_E, KC_N, KC_M, KC_G, KC_T, KC_S, KC_R, KC_A, _______, \
_______, KC_SLSH, KC_DOT, KC_COMM, KC_H, KC_K, TD(UND), KC_V, KC_D, KC_C, KC_X, _______, \ KYSFT, KC_SLSH, KC_DOT, KC_COMM, KC_H, KC_K, TD(UND), KC_V, KC_D, KC_C, KC_X, KYSFT, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ XK_GRV, PIPBOY, M(1), KC_BTN1, KC_HOME, KC_ENT, KC_ENT, KC_END, KC_LGUI, TD(ESC), KC_LALT, KYCTL \
), ),
/* /*
~ 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
DASHMV- V+ NEXTPLAY INS M V- V+ NEXTPLAY DASHINS
- = [ ] \ HOMEPGDNPGUPEND \ - = TGL HOMEEND HOME \ ~
*/ */
[_IKAPILA] = KEYMAP( \ [_IKAPILA] = KEYMAP( \
KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \ _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \
_______, TD(DSH), TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_INS, _______, \ _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, TD(DSH), KC_INS, \
_______, KC_MINS, KC_EQL, TD(HRD), KC_RBRC, KC_BSLS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_BSLS, _______, \ _______, KC_MINS, KC_EQL, XXXXXXX, XXXXXXX, LCTL(KC_Z), KC_HOME, TD(HND), KC_HOME, XXXXXXX, KC_BSLS, KC_TILD, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
), ),
/* /*
! @ # $ % ^ & * ( ) ! @ # $ % ^ & * ( ) BSPC
DASHMV- V+ NEXTPLAY HOMEPGDNPGUPEND PSCR DEL NEXTPGUP V+ V- DASHPSCR
_ + { } | _ + END HOMEEND [ ]
*/ */
[_IKASHFT] = KEYMAP( \ [_IKASHFT] = KEYMAP( \
_______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, \ _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, \
KC_DEL, TD(DSH), TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_PSCR, _______, \ KC_DEL, TD(PGN), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_MNXT, KC_PGUP, KC_VOLU, TD(VOM), KC_MDSH, KC_PSCR, \
_______, KC_UNDS, KC_PLUS, TD(EGT), KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_PAUS, _______, \ _______, KC_UNDS, KC_PLUS, KC_END, KC_HOME, KC_END, M(1), M(0), M(2), KC_LBRC, KC_RBRC, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
), ),
@ -210,14 +219,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
>>init network SEQUENCE >>init network SEQUENCE
sleep 11; echo "DONE\n" sleep 11; echo "DONE\n"
throttle INPUT 11001001 OUTPUT 010011001 ? FULL )); \ throttle INPUT 11001001 OUTPUT 010011001 ? FULL )); \
<<chkconfig cargoCode ==== "'1'" <<chKConfig cargoCode ==== "'1'"
up down left right kc_b kc_a GUI up down left right KC_b KC_a GUI
*/ */
[_ARROWKY] = KEYMAP( \ [_ARROWKY] = KEYMAP( \
_______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, _______, \ _______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, _______, \
_______, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, _______, \ _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, _______, \
_______, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, _______, \ _______, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, KC_LEFT, _______, \
_______, _______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, _______ \ _______, _______, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, KC_UP, KC_LEFT, KC_DOWN, KC_RGHT, _______ \
), ),
@ -225,56 +236,56 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10
F11 F12 F13 F14 F15 F16 F17 F18 F19 F20 F21 F22 F23 F24PAUS SCLKBOOT NKROCAPS
F21 F22 F23 F24PAUS BOOTRSETNKROCAPS
*/ */
[_FNCTION] = KEYMAP( \ [_FNCTION] = KEYMAP( \
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, \ _______, TD(F11), TD(F12), TD(F13), TD(F14), TD(F15), TD(F16), TD(F17), TD(F18), TD(F19), TD(F20), _______, \
_______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, \ _______, KC_F21, KC_F22, KC_F23, KC_F24, XXXXXXX, XXXXXXX, KC_SLCK, XXXXXXX, XXXXXXX, TGNKRO, XXXXXXX, \
_______, KC_F21, KC_F22, KC_F23, KC_F24, _______, _______, _______,M(BOOTME), RESET, TGNKRO, KC_CAPS, \ _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_CAPS, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
), ),
/* /*
F7 F8 F9 NLCK P7 P8 P9 P- BDEL F7 F8 F9 P7 P8 P9 NLCK P- BDEL
F4 F5 F6 ^INS P4 P5 P6 P+ () F4 F5 F6 P4 P5 P6 ^INS P+ ()
CALT F1 F2 F3 CALT P1 P2 P3 P* = CALT F1 F2 F3 P1 P2 P3 P* =
F0? TGL P0 0 P. P/ F0? P0 0 P. TGL P/
*/ */
[_NINEKEY] = KEYMAP( \ [_NINEKEY] = KEYMAP( \
_______, KC_RGHT, KC_F7, KC_F8, KC_F9, KC_UP, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_PMNS, M(BSDEL), \ _______, KC_RGHT, KC_F7, KC_F8, KC_F9, KC_UP, KC_P7, KC_P8, KC_P9, KC_NLCK,KC_PMNS, KC_DEL, \
_______, KC_LEFT, KC_F4, KC_F5, KC_F6, KC_DOWN, CAINS, KC_P4, KC_P5, KC_P6, KC_PPLS, XK_PREN, \ _______, KC_LEFT, KC_F4, KC_F5, KC_F6, KC_DOWN, KC_P4, KC_P5, KC_P6, CAINS,KC_PPLS, M(0), \
_______, CAKY, KC_F1, KC_F2, KC_F3, _______, CAKY, KC_P1, KC_P2, KC_P3, KC_PAST, TD(EQE), \ _______, CAKY, KC_F1, KC_F2, KC_F3, XXXXXXX, KC_P1, KC_P2, KC_P3, XXXXXXX,KC_PAST, TD(EQE), \
_______, _______, _______, KC_F11, _______, _______, TG(_NINEKEY), KC_P0, KC_0, KC_PDOT, KC_PSLS, _______ \ _______, _______, _______, KC_F11, _______, _______, KC_P0, KC_0, KC_PDOT, CAKY,KC_PSLS, _______ \
), ),
/* /*
ESC ^PGD^UP ^PGU^PGU^HOM MW_L MU MW_R AC2 ESC ^HOM^PGD^UP ^PGU^PGU MW_L MU MW_R AC2
^LFT^DWN^RGT^PGD^END ML MD MR AC1 ^END^LFT^DWN^RGT^PGD ML MD MR AC1
M2 M4 M3 M1 M5 MW_DMW_USLCK AC0 M5 M2 M4 M3 M1 MW_DMW_U AC0
*/ */
[_NAVIGAT] = KEYMAP( \ [_NAVIGAT] = KEYMAP( \
KC_ESC, NAVCPD, NAVCU, NAVCPU, NAVCPU, NAVCH, XXXXXXX, KC_WH_L, KC_MS_U, KC_WH_R, KC_ACL2, _______, \ KC_ESC, NAVCH, NAVCPD, NAVCU, NAVCPU, NAVCPU, XXXXXXX, KC_WH_L, KC_MS_U, KC_WH_R, KC_ACL2, _______, \
_______, NAVCL, NAVCD, NAVCR, NAVCPD, NAVCE, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_R, KC_ACL1, _______, \ _______, NAVCE, NAVCL, NAVCD, NAVCR, NAVCPD, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_R, KC_ACL1, _______, \
_______, KC_BTN2, KC_BTN4, KC_BTN3, KC_BTN1, KC_BTN5, XXXXXXX, KC_WH_D, KC_WH_U, KC_SLCK, KC_ACL0, _______, \ _______, KC_BTN5, KC_BTN2, KC_BTN4, KC_BTN3, KC_BTN1, XXXXXXX, KC_WH_D, KC_WH_U, XXXXXXX, KC_ACL0, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
), ),
@ -286,68 +297,75 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
), ),
/* [_MLAYER] = KEYMAP( \
//add greek symbols _______,UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502), _______, _______, _______, _______, _______, _______, \
//set_unicode_input_mode(UC_WINC); // Windows (with WinCompose, see wiki) KC_QUOT,UC(0x251C),UC(0x253C),UC(0x2524), _______, _______, M(1), M(0), M(2), _______, _______, _______, \
_______,UC(0x2514),UC(0x2534),UC(0x2518), _______, _______, _______, _______, _______, _______, _______, _______, \
_______, WINSH, WIN, OSX, _______, _______, _______, _______, _______, _______, _______, _______ \
),
//UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502)
//UC(0x251C),UC(0x253C),UC(0x2524),
//UC(0x2514),UC(0x2534),UC(0x2518),
*/
[_GRVTABL] = KEYMAP( \ [_GRVTABL] = KEYMAP( \
TG(5), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(3), \ TG(5),LALT(KC_PSCR), M(4), KC_PWR,KC_POWER, RESET, RESET, KC_R, KC_E, KC_I,LALT(KC_PSCR),TG(3), \
TG(1), XXXXXXX, TD(VOM), KC_VOLU, KC_MNXT, KC_MPLY, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(1), \ TG(1), TG(6), TG(7), TG(9), TG(3), TG(2), TG(2), KC_S, KC_U, KC_B, TG(6), TG(1), \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(0), XXXXXXX, TG(4), XXXXXXX, TG(8), LCLEAR, \ M(3), TG(8), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MYCM, KC_CALC, XXXXXXX, XXXXXXX, TG(8), M(3), \
XXXXXXX, XXXXXXX, TG(6), TG(3), XXXXXXX, TG(2), TG(2), TG(7), TG(3), OSM(MOD_MEH), TG(5), _______ \ TT(15), TG(6), TG(7), TG(9), TG(3), TG(2), TG(2), TG(3), TG(9), TG(7), TG(6), _______ \
)}; )};
qk_tap_dance_action_t tap_dance_actions[] = { qk_tap_dance_action_t tap_dance_actions[] = {
[VOM] = ACTION_TAP_DANCE_DOUBLE(KC_VOLD, KC_MUTE), [VOM] = ACTION_TAP_DANCE_DOUBLE(KC_VOLD, KC_MUTE),
[PRN] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_RPRN), [PRN] = ACTION_TAP_DANCE_DOUBLE(KC_LPRN, KC_RPRN),
[EGT] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR), [EGT] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR),
[HRD] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC), [HRD] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),
[DSH] = ACTION_TAP_DANCE_DOUBLE(KC_NDSH, KC_MDSH), [DSH] = ACTION_TAP_DANCE_DOUBLE(KC_NDSH, KC_MDSH),
[QUT] = ACTION_TAP_DANCE_DOUBLE(KC_Q, LALT(KC_F4)), [ESC] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, LALT(KC_F4)),
[ESC] = ACTION_TAP_DANCE_DOUBLE(TT(_NINEKEY), KC_ESC),
[EQE] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_ENT), [EQE] = ACTION_TAP_DANCE_DOUBLE(KC_EQL, KC_ENT),
[PGN] = ACTION_TAP_DANCE_DOUBLE(KC_PGDN, KC_PGUP), [UND] = ACTION_TAP_DANCE_DOUBLE(KC_Z, LCTL(KC_Z)),
[UND] = ACTION_TAP_DANCE_DOUBLE(KC_Z, LCTL(KC_Z)), [PGN] = ACTION_TAP_DANCE_DOUBLE(KC_PGDN, KC_PGUP),
[HND] = ACTION_TAP_DANCE_DOUBLE(KC_HOME, KC_END),
[COD] = ACTION_TAP_DANCE_DOUBLE(KC_COMM, KC_DOT),
[F11] = ACTION_TAP_DANCE_DOUBLE(KC_F1, KC_F11),
[F12] = ACTION_TAP_DANCE_DOUBLE(KC_F2, KC_F12),
[F13] = ACTION_TAP_DANCE_DOUBLE(KC_F3, KC_F13),
[F14] = ACTION_TAP_DANCE_DOUBLE(KC_F4, KC_F14),
[F15] = ACTION_TAP_DANCE_DOUBLE(KC_F5, KC_F15),
[F16] = ACTION_TAP_DANCE_DOUBLE(KC_F6, KC_F16),
[F17] = ACTION_TAP_DANCE_DOUBLE(KC_F7, KC_F17),
[F18] = ACTION_TAP_DANCE_DOUBLE(KC_F8, KC_F18),
[F19] = ACTION_TAP_DANCE_DOUBLE(KC_F9, KC_F19),
[F20] = ACTION_TAP_DANCE_DOUBLE(KC_F10, KC_F20),
}; };
void matrix_init_user(){
set_unicode_input_mode(UC_LNX);
}
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
if (record->event.pressed) { if (record->event.pressed) {
switch(id) { switch(id) {
case 0: case 0:
return MACRO(D(LSHIFT),T(9), T(0),U(LSHIFT), T(LEFT), END); return MACRO( D(LSFT), T(9), U(LSFT), D(LSFT), T(0), U(LSFT), T(LEFT), END );
case 1: case 1:
return MACRO(T(LBRC), T(RBRC), T(LEFT), END); return MACRO( D(LSFT), T(LBRC), U(LSFT), D(LSFT), T(RBRC), U(LSFT), T(LEFT), END );
case 2: case 2:
return MACRO(D(LSHIFT),T(LBRC), T(RBRC),U(LSHIFT), T(ENT), T(UP), END); return MACRO( T(LBRC), T(RBRC), T(LEFT), END);
case 3: case 3:
return MACRO(T(BSPC), END); clear_keyboard();
/* static bool bsdel_mods = false; case 4:
case BSDEL: { return MACRO( D(LSFT), T(SCOLON), U(LSFT), D(LSFT), T(9), U(LSFT), D(LSFT), T(0), U(LSFT), D(LSFT), T(LBRACKET), U(LSFT), D(LSFT), T(9), U(LSFT), D(LSFT), T(SCOLON), U(LSFT), D(LSFT), T(0), U(LSFT), D(LSFT), T(BSLASH), U(LSFT), D(LSFT), T(SCOLON), U(LSFT), D(LSFT), T(7), U(LSFT), D(LSFT), T(RBRACKET), U(LSFT), T(SCOLON), D(LSFT), T(SCOLON), U(LSFT), END );
uint8_t kc = KC_BSPC; case WINSH:
if (record->event.pressed) { set_unicode_input_mode(UC_WIN);
if (keyboard_report->mods) { return false;
kc = KC_DEL; break;
} case WIN:
register_code (kc); set_unicode_input_mode(UC_WINC);
bsdel_mods = keyboard_report->mods; return false;
} break;
else { case OSX:
if (bsdel_mods) { set_unicode_input_mode(UC_OSX);
kc = KC_DEL; return false;
} break;
}
unregister_code (kc); }
} return MACRO_NONE;
}
*/ case 4:
if (!record->event.pressed) {
// bootloader();
}
}
}
return MACRO_NONE;
}; };