keymap.c (11742B)
1 #include QMK_KEYBOARD_H 2 3 extern keymap_config_t keymap_config; 4 5 extern uint8_t is_master; 6 7 // Each layer gets a name for readability, which is then used in the keymap matrix below. 8 // The underscores don't mean anything - you can have a layer called STUFF or any other name. 9 // Layer names don't all need to be of the same length, obviously, and you can also skip them 10 // entirely and just use numbers. 11 enum layer_number { 12 _QWERTY = 0, 13 _FLOCK, 14 _LOWER, 15 _RAISE, 16 _ADJUST, 17 }; 18 19 enum custom_keycodes { 20 RGB_RST = SAFE_RANGE, 21 SEND_SUM, 22 SEND_AVE, 23 SEND_CIF, 24 SEND_MAX, 25 SEND_MIN 26 }; 27 28 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 29 [_QWERTY] = LAYOUT_with_setta21( 30 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------| 31 KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,LT(_LOWER, KC_P0),KC_P1, KC_P4, KC_P7,KC_NUM, KC_ESC, 32 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 33 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_P2, KC_P5, KC_P8,KC_PSLS, KC_F2, 34 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 35 KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,LT(_RAISE, KC_PDOT),KC_P3,KC_P6, KC_P9,KC_PAST, KC_EQL, 36 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| 37 KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_PENT, KC_PPLS,KC_PMNS, KC_DEL, 38 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |-----------------------------------------------| 39 MO(_ADJUST),KC_LCTL, KC_LALT, KC_LGUI,MO(_LOWER), KC_SPC, KC_SPC,MO(_RAISE),KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT 40 //`------------------------------------------------------------------------------------------------------------' 41 ), 42 43 [_FLOCK] = LAYOUT_with_setta21( 44 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------| 45 TG(_FLOCK), KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______,_______,_______,_______,_______,_______, 46 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 47 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______, 48 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 49 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______, 50 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| 51 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______, 52 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |-----------------------------------------------| 53 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ 54 //`------------------------------------------------------------------------------------------------------------' 55 ), 56 57 [_LOWER] = LAYOUT_with_setta21( 58 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------| 59 KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MO(_LOWER),XXXXXXX,KC_LEFT,XXXXXXX,XXXXXXX, KC_ESC, 60 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 61 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR,KC_LPRN, KC_RPRN, KC_DEL, KC_DOWN,KC_DOWN, KC_UP,KC_PSLS, KC_F2, 62 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 63 _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, MO(_RAISE),XXXXXXX,KC_RIGHT,XXXXXXX,KC_PAST,KC_EQL, 64 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| 65 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, KC_PENT, KC_PPLS,KC_PMNS, KC_DEL, 66 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |-----------------------------------------------| 67 _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY 68 //`------------------------------------------------------------------------------------------------------------' 69 ), 70 71 [_RAISE] = LAYOUT_with_setta21( 72 //,-----------------------------------------------------| |-----------------------------------------------------. |------------------------------------------------| 73 _______, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_F11, KC_F4, KC_F7,SEND_MIN, KC_ESC, 74 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+--------+-------| 75 KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_F12, KC_F5, KC_F8,SEND_MAX, KC_F2, 76 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+--------+-------| 77 KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F3, KC_F6, KC_F9,SEND_CIF, KC_EQL, 78 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+--------+-------| 79 _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, _______, _______, KC_RPRN, SEND_SUM,SEND_AVE, KC_DEL, 80 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |------------------------------------------------| 81 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ 82 //`------------------------------------------------------------------------------------------------------------' 83 ), 84 85 [_ADJUST] = LAYOUT_with_setta21( /* Base */ 86 //,-----------------------------------------------------| |-----------------------------------------------------. |-----------------------------------------------| 87 TG(_FLOCK), KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______,UG_VALD,UG_HUED,UG_SATD,XXXXXXX,_______, 88 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 89 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MS_BTN1, MS_UP, MS_BTN2, XXXXXXX,LALT(KC_PSCR), UG_VALU,UG_HUEU,UG_SATU,XXXXXXX,_______, 90 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| 91 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MS_LEFT, MS_DOWN, MS_RGHT, XXXXXXX, KC_PSCR, _______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______, 92 //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| 93 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,LCA(KC_DEL), UG_NEXT, UG_TOGG,_______,_______, 94 //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |-----------------------------------------------| 95 _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ 96 //`------------------------------------------------------------------------------------------------------------' 97 ) 98 }; 99 100 int RGB_current_mode; 101 bool process_record_user(uint16_t keycode, keyrecord_t *record) { 102 103 bool result = false; 104 switch (keycode) { 105 case SEND_SUM: 106 if (record->event.pressed) { 107 SEND_STRING("=SUM("); 108 } 109 break; 110 case SEND_AVE: 111 if (record->event.pressed) { 112 SEND_STRING("=AVERAGE("); 113 } 114 break; 115 case SEND_CIF: 116 if (record->event.pressed) { 117 SEND_STRING("=COUNTIF("); 118 } 119 break; 120 case SEND_MAX: 121 if (record->event.pressed) { 122 SEND_STRING("=MAX("); 123 } 124 break; 125 case SEND_MIN: 126 if (record->event.pressed) { 127 SEND_STRING("=MIN("); 128 } 129 break; 130 #ifdef RGBLIGHT_ENABLE 131 case QK_UNDERGLOW_MODE_NEXT: 132 if (record->event.pressed) { 133 rgblight_mode(RGB_current_mode); 134 rgblight_step(); 135 RGB_current_mode = rgblight_config.mode; 136 } 137 break; 138 case RGB_RST: 139 if (record->event.pressed) { 140 eeconfig_update_rgblight_default(); 141 rgblight_enable(); 142 RGB_current_mode = rgblight_config.mode; 143 } 144 break; 145 #endif 146 default: 147 result = true; 148 break; 149 } 150 151 return result; 152 }