diff options
| -rw-r--r-- | keyboards/sol/keymaps/kageurufu/keymap.c | 346 | ||||
| -rw-r--r-- | keyboards/sol/keymaps/kageurufu/readme.md | 47 | ||||
| -rw-r--r-- | keyboards/zen/keymaps/kageurufu/keymap.c | 62 | ||||
| -rw-r--r-- | users/kageurufu/config.h | 4 | ||||
| -rw-r--r-- | users/kageurufu/custom_rgb.c | 18 | ||||
| -rw-r--r-- | users/kageurufu/custom_rgb.h | 3 | ||||
| -rw-r--r-- | users/kageurufu/kageurufu.c | 12 | ||||
| -rw-r--r-- | users/kageurufu/kageurufu.h | 5 | ||||
| -rw-r--r-- | users/kageurufu/layouts.h | 58 | ||||
| -rw-r--r-- | users/kageurufu/process_records.c | 44 | ||||
| -rw-r--r-- | users/kageurufu/process_records.h | 27 | ||||
| -rw-r--r-- | users/kageurufu/readme.md (renamed from keyboards/sol/keymaps/kageurufu/config.h) | 13 | ||||
| -rw-r--r-- | users/kageurufu/rules.mk | 15 |
13 files changed, 294 insertions, 360 deletions
diff --git a/keyboards/sol/keymaps/kageurufu/keymap.c b/keyboards/sol/keymaps/kageurufu/keymap.c index 822256d85..9ea89db05 100644 --- a/keyboards/sol/keymaps/kageurufu/keymap.c +++ b/keyboards/sol/keymaps/kageurufu/keymap.c | |||
| @@ -1,69 +1,35 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "kageurufu.h" | ||
| 2 | #ifdef PROTOCOL_LUFA | 3 | #ifdef PROTOCOL_LUFA |
| 3 | #include "lufa.h" | 4 | #include "lufa.h" |
| 4 | #include "split_util.h" | 5 | #include "split_util.h" |
| 5 | #endif | 6 | #endif |
| 6 | #ifdef SSD1306OLED | ||
| 7 | #include "common/ssd1306.h" | ||
| 8 | #endif | ||
| 9 | 7 | ||
| 10 | extern keymap_config_t keymap_config; | 8 | extern keymap_config_t keymap_config; |
| 11 | |||
| 12 | #ifdef RGBLIGHT_ENABLE | ||
| 13 | //Following line allows macro to read current RGB settings | ||
| 14 | extern rgblight_config_t rgblight_config; | ||
| 15 | #endif | ||
| 16 | |||
| 17 | extern uint8_t is_master; | 9 | extern uint8_t is_master; |
| 18 | 10 | ||
| 19 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | 11 | /* Base Layout |
| 20 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | 12 | * ,------------------------------------------------. ,------------------------------------------------. |
| 21 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | 13 | * | ` | | | | | | | | | | | | | | BkSp | |
| 22 | // entirely and just use numbers. | 14 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| |
| 23 | enum layer_number { | 15 | * | Tab | | | | | | | | | | | | | | \ | |
| 24 | _QWERTY = 0, | 16 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| |
| 25 | _COLEMAK, | 17 | * | Esc | | | | | | | | | | | | | | ' | |
| 26 | _FN, | 18 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 27 | _ADJ | 19 | * | Sft( | | | | | | | | | | | | | | Sft) | |
| 28 | }; | 20 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 29 | 21 | * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn | | |
| 30 | enum custom_keycodes { | 22 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| |
| 31 | QWERTY = SAFE_RANGE, | 23 | * | Space| Bksp | | Enter| Space| |
| 32 | COLEMAK, | 24 | * `-------------' `--------=----' |
| 33 | FN, | 25 | */ |
| 34 | ADJ, | 26 | #define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__) |
| 35 | BACKLIT, | 27 | #define _BASE_LAYOUT( \ |
| 36 | RGBRST | ||
| 37 | }; | ||
| 38 | |||
| 39 | enum macro_keycodes { | ||
| 40 | KC_SAMPLEMACRO, | ||
| 41 | }; | ||
| 42 | |||
| 43 | #define FN_ESC LT(_FN, KC_ESC) | ||
| 44 | |||
| 45 | // Define your non-alpha grouping in this define's LAYOUT, and all your BASE_LAYERS will share the same mod/macro columns | ||
| 46 | /* Base Layout | ||
| 47 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 48 | * | ` | | | | | | | | | | | | | | BkSp | | ||
| 49 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 50 | * | Tab | | | | | | | | | | | | | | \ | | ||
| 51 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 52 | * | Esc | | | | | | | | | | | | | | ' | | ||
| 53 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 54 | * | Sft( | | | | | | | | | | | | | | Sft) | | ||
| 55 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 56 | * | Ctrl | Win | Win | Alt | FN | Space| RGB | | FN | FN | - | = | Down | PgUp | PgDn | | ||
| 57 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 58 | * | Space| Bksp | | Enter| Space| | ||
| 59 | * `-------------' `--------=----' | ||
| 60 | */ | ||
| 61 | #define BASE_LAYOUT( \ | ||
| 62 | _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \ | 28 | _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \ |
| 63 | _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \ | 29 | _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \ |
| 64 | _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \ | 30 | _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \ |
| 65 | ) \ | 31 | ) \ |
| 66 | LAYOUT( \ | 32 | EXPAND_LAYOUT( \ |
| 67 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ | 33 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, RGB_MOD, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ |
| 68 | KC_TAB, _00, _01, _02, _03, _04, KC_LBRC, KC_RBRC, _05, _06, _07, _08, _09, KC_BSLS, \ | 34 | KC_TAB, _00, _01, _02, _03, _04, KC_LBRC, KC_RBRC, _05, _06, _07, _08, _09, KC_BSLS, \ |
| 69 | FN_ESC, _10, _11, _12, _13, _14, RGB_SAI, RGB_VAI, _15, _16, _17, _18, _19, KC_QUOT, \ | 35 | FN_ESC, _10, _11, _12, _13, _14, RGB_SAI, RGB_VAI, _15, _16, _17, _18, _19, KC_QUOT, \ |
| @@ -71,265 +37,43 @@ LAYOUT( \ | |||
| 71 | KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, FN, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN, \ | 37 | KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, FN, FN, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN, \ |
| 72 | KC_VOLD, KC_VOLU, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_VOLD, KC_VOLU \ | 38 | KC_VOLD, KC_VOLU, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_VOLD, KC_VOLU \ |
| 73 | ) | 39 | ) |
| 40 | #define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__) | ||
| 74 | 41 | ||
| 75 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 42 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 76 | /* Qwerty | 43 | |
| 77 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 78 | * | | | | | | | | | | | | | | | | | ||
| 79 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 80 | * | | Q | W | E | R | T | | | | Y | U | I | O | P | | | ||
| 81 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 82 | * | | A | S | D | F | G | | | | H | J | K | L | ; | | | ||
| 83 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 84 | * | | Z | X | C | V | B | | | | N | M | , | . | / | | | ||
| 85 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 86 | * | | | | | | | | | | | | | | | | | ||
| 87 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 88 | * | | | | | | | ||
| 89 | * `-------------' `--------=----' | ||
| 90 | */ | ||
| 91 | [_QWERTY] = BASE_LAYOUT( \ | 44 | [_QWERTY] = BASE_LAYOUT( \ |
| 92 | KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, \ | 45 | _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, \ |
| 93 | KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, \ | 46 | _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, \ |
| 94 | KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH \ | 47 | _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ \ |
| 95 | ), | 48 | ), |
| 96 | 49 | ||
| 97 | /* Colemak | ||
| 98 | * ,------------------------------------------------. ,------------------------------------------------. | ||
| 99 | * | | | | | | | | | | | | | | | | | ||
| 100 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 101 | * | | Q | W | F | P | B | | | | J | L | U | Y | ; | | | ||
| 102 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | ||
| 103 | * | | A | R | S | T | G | | | | K | N | E | I | O | | | ||
| 104 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 105 | * | | Z | X | C | D | V | [ | | ] | M | H | , | . | / | | | ||
| 106 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 107 | * | | | | | | | | | | | | | | | | | ||
| 108 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 109 | * | | | | | | | ||
| 110 | * `-------------' `--------=----' | ||
| 111 | */ | ||
| 112 | [_COLEMAK] = BASE_LAYOUT( \ | 50 | [_COLEMAK] = BASE_LAYOUT( \ |
| 113 | KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, \ | 51 | _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, \ |
| 114 | KC_A, KC_R, KC_S, KC_T, KC_G, KC_K, KC_N, KC_E, KC_I, KC_O, \ | 52 | _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, \ |
| 115 | KC_Z, KC_X, KC_C, KC_D, KC_V, KC_M, KC_H, KC_COMM, KC_DOT, KC_SLSH | 53 | _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ \ |
| 116 | ), | 54 | ), |
| 117 | 55 | ||
| 56 | [_COLEMAK_DH] = BASE_LAYOUT( \ | ||
| 57 | ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________, \ | ||
| 58 | ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________, \ | ||
| 59 | ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________ \ | ||
| 60 | ), | ||
| 118 | 61 | ||
| 119 | /* FN | 62 | [_FN] = EXPAND_LAYOUT( \ |
| 120 | * ,------------------------------------------------. ,------------------------------------------------. | 63 | ________________FUNCTION_L1________________, _______, KC_PSCR, ________________FUNCTION_R1________________, \ |
| 121 | * | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | | 64 | ________________FUNCTION_L2________________, _______, _______, ________________FUNCTION_R2________________, \ |
| 122 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | 65 | ________________FUNCTION_L3________________, _______, _______, ________________FUNCTION_R3________________, \ |
| 123 | * | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | | 66 | ________________FUNCTION_L4________________, _______, _______, ________________FUNCTION_R4________________, \ |
| 124 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | 67 | ________________FUNCTION_L5________________, ADJ, ADJ, ________________FUNCTION_R5________________, \ |
| 125 | * | Ctrl | A | O | E | U | I | | | | D | H | T | N | S | / | | 68 | KC_VOLD, KC_VOLU, _______, KC_DEL, _______, _______, KC_VOLD, KC_VOLU \ |
| 126 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 127 | * | Shift| ; | Q | J | K | X | [ | | ] | B | M | W | V | Z |Enter | | ||
| 128 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 129 | * | ADJ | Esc | Alt | GUI | EISU |Lower |Space | |Space |FN | KANA | Left | Down | Up |Right | | ||
| 130 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 131 | * |Lower |Space | |Space |FN | | ||
| 132 | * `-------------' `------------' | ||
| 133 | */ | ||
| 134 | [_FN] = LAYOUT( \ | ||
| 135 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_PSCR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \ | ||
| 136 | _______, KC_PGDN, KC_UP, KC_PGUP, _______, KC_LBRC, _______, _______, KC_RBRC, KC_7, KC_UP, KC_9, KC_0, KC_HOME, \ | ||
| 137 | ADJ, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_RBRC, KC_END, \ | ||
| 138 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_PGUP, _______, \ | ||
| 139 | _______, _______, _______, _______, ADJ, _______, ADJ, ADJ, ADJ, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, \ | ||
| 140 | KC_VOLD, KC_VOLU, _______, KC_DEL, _______, _______, KC_VOLD, KC_VOLU \ | ||
| 141 | ), | 69 | ), |
| 142 | 70 | ||
| 143 | /* ADJ | 71 | [_ADJ] = EXPAND_LAYOUT( \ |
| 144 | * ,------------------------------------------------. ,------------------------------------------------. | 72 | _________________ADJUST_L1_________________, _______, _______, _________________ADJUST_R1_________________, \ |
| 145 | * | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | | 73 | _________________ADJUST_L2_________________, _______, _______, _________________ADJUST_R2_________________, \ |
| 146 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | 74 | _________________ADJUST_L3_________________, _______, _______, _________________ADJUST_R3_________________, \ |
| 147 | * | ~ | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | | | 75 | _________________ADJUST_L4_________________, _______, _______, _________________ADJUST_R4_________________, \ |
| 148 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| | 76 | _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________, \ |
| 149 | * | Ctrl | A | O | E | U | I | | | | D | H | T | N | S | / | | ||
| 150 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 151 | * | Shift| ; | Q | J | K | X | [ | | ] | B | M | W | V | Z |Enter | | ||
| 152 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 153 | * |ADJ| Esc | Alt | GUI | EISU |Lower |Space | |Space |FN | KANA | Left | Down | Up |Right | | ||
| 154 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| | ||
| 155 | * |Lower |Space | |Space |FN | | ||
| 156 | * `-------------' `------------' | ||
| 157 | */ | ||
| 158 | |||
| 159 | [_ADJ] = LAYOUT( \ | ||
| 160 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \ | ||
| 161 | _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ | ||
| 162 | _______, RGB_HUD, RGB_VAD, RGB_HUI, RGBRST, _______, _______, _______, _______, QWERTY, COLEMAK, _______, _______, _______, \ | ||
| 163 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, \ | ||
| 164 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, \ | ||
| 165 | KC_VOLD, KC_VOLU, _______, _______, _______, _______, KC_VOLD, KC_VOLU \ | 77 | KC_VOLD, KC_VOLU, _______, _______, _______, _______, KC_VOLD, KC_VOLU \ |
| 166 | ) | 78 | ) |
| 167 | }; | 79 | }; |
| 168 | |||
| 169 | |||
| 170 | // define variables for reactive RGB | ||
| 171 | bool TOG_STATUS = false; | ||
| 172 | int RGB_current_mode; | ||
| 173 | |||
| 174 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 175 | //uint8_t shifted = get_mods() & (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)); | ||
| 176 | |||
| 177 | switch (keycode) { | ||
| 178 | case QWERTY: | ||
| 179 | if (record->event.pressed) { | ||
| 180 | set_single_persistent_default_layer(_QWERTY); | ||
| 181 | } | ||
| 182 | return false; | ||
| 183 | break; | ||
| 184 | case COLEMAK: | ||
| 185 | if(record->event.pressed) { | ||
| 186 | set_single_persistent_default_layer(_COLEMAK); | ||
| 187 | } | ||
| 188 | return false; | ||
| 189 | break; | ||
| 190 | case FN: | ||
| 191 | if (record->event.pressed) { | ||
| 192 | layer_on(_FN); | ||
| 193 | } else { | ||
| 194 | layer_off(_FN); | ||
| 195 | } | ||
| 196 | return false; | ||
| 197 | break; | ||
| 198 | case ADJ: | ||
| 199 | if (record->event.pressed) { | ||
| 200 | layer_on(_ADJ); | ||
| 201 | } else { | ||
| 202 | layer_off(_ADJ); | ||
| 203 | } | ||
| 204 | return false; | ||
| 205 | break; | ||
| 206 | //led operations - RGB mode change now updates the RGB_current_mode to allow the right RGB mode to be set after reactive keys are released | ||
| 207 | case RGBRST: | ||
| 208 | #ifdef RGBLIGHT_ENABLE | ||
| 209 | if (record->event.pressed) { | ||
| 210 | eeconfig_update_rgblight_default(); | ||
| 211 | rgblight_enable(); | ||
| 212 | RGB_current_mode = rgblight_config.mode; | ||
| 213 | } | ||
| 214 | #endif | ||
| 215 | break; | ||
| 216 | } | ||
| 217 | return true; | ||
| 218 | } | ||
| 219 | |||
| 220 | void matrix_init_user(void) { | ||
| 221 | #ifdef RGBLIGHT_ENABLE | ||
| 222 | RGB_current_mode = rgblight_config.mode; | ||
| 223 | #endif | ||
| 224 | //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h | ||
| 225 | #ifdef SSD1306OLED | ||
| 226 | iota_gfx_init(!has_usb()); // turns on the display | ||
| 227 | #endif | ||
| 228 | } | ||
| 229 | |||
| 230 | void matrix_scan_user(void) { | ||
| 231 | #ifdef SSD1306OLED | ||
| 232 | led_test_init(); | ||
| 233 | iota_gfx_task(); // this is what updates the display continuously | ||
| 234 | #endif | ||
| 235 | } | ||
| 236 | |||
| 237 | |||
| 238 | //SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h | ||
| 239 | #ifdef SSD1306OLED | ||
| 240 | |||
| 241 | // hook point for 'led_test' keymap | ||
| 242 | // 'default' keymap's led_test_init() is empty function, do nothing | ||
| 243 | // 'led_test' keymap's led_test_init() force rgblight_mode_noeeprom(35); | ||
| 244 | __attribute__ ((weak)) | ||
| 245 | void led_test_init(void) {} | ||
| 246 | |||
| 247 | void matrix_update(struct CharacterMatrix *dest, | ||
| 248 | const struct CharacterMatrix *source) { | ||
| 249 | if (memcmp(dest->display, source->display, sizeof(dest->display))) { | ||
| 250 | memcpy(dest->display, source->display, sizeof(dest->display)); | ||
| 251 | dest->dirty = true; | ||
| 252 | } | ||
| 253 | } | ||
| 254 | |||
| 255 | //assign the right code to your layers for OLED display | ||
| 256 | #define L_BASE 0 | ||
| 257 | #define L_FN (1<<_FN) | ||
| 258 | #define L_ADJ (1<<_ADJ) | ||
| 259 | #define L_ADJ_TRI (L_ADJ|L_FN) | ||
| 260 | |||
| 261 | static void render_logo(struct CharacterMatrix *matrix) { | ||
| 262 | |||
| 263 | static char logo[]={ | ||
| 264 | 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, | ||
| 265 | 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, | ||
| 266 | 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, | ||
| 267 | 0}; | ||
| 268 | matrix_write(matrix, logo); | ||
| 269 | //matrix_write_P(&matrix, PSTR(" Split keyboard kit")); | ||
| 270 | } | ||
| 271 | |||
| 272 | |||
| 273 | |||
| 274 | void render_status(struct CharacterMatrix *matrix) { | ||
| 275 | |||
| 276 | // Render to mode icon | ||
| 277 | static char logo[][2][3]={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; | ||
| 278 | if(keymap_config.swap_lalt_lgui==false){ | ||
| 279 | matrix_write(matrix, logo[0][0]); | ||
| 280 | matrix_write_P(matrix, PSTR("\n")); | ||
| 281 | matrix_write(matrix, logo[0][1]); | ||
| 282 | }else{ | ||
| 283 | matrix_write(matrix, logo[1][0]); | ||
| 284 | matrix_write_P(matrix, PSTR("\n")); | ||
| 285 | matrix_write(matrix, logo[1][1]); | ||
| 286 | } | ||
| 287 | |||
| 288 | // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below | ||
| 289 | char buf[40]; | ||
| 290 | snprintf(buf,sizeof(buf), "Undef-%ld", layer_state); | ||
| 291 | matrix_write_P(matrix, PSTR("\nLayer: ")); | ||
| 292 | switch (layer_state) { | ||
| 293 | case L_BASE: | ||
| 294 | matrix_write_P(matrix, PSTR("Default")); | ||
| 295 | break; | ||
| 296 | case L_FN: | ||
| 297 | matrix_write_P(matrix, PSTR("FN")); | ||
| 298 | break; | ||
| 299 | case L_ADJ: | ||
| 300 | case L_ADJ_TRI: | ||
| 301 | matrix_write_P(matrix, PSTR("ADJ")); | ||
| 302 | break; | ||
| 303 | default: | ||
| 304 | matrix_write(matrix, buf); | ||
| 305 | } | ||
| 306 | |||
| 307 | // Host Keyboard LED Status | ||
| 308 | char led[40]; | ||
| 309 | snprintf(led, sizeof(led), "\n%s %s %s", | ||
| 310 | (host_keyboard_leds() & (1<<USB_LED_NUM_LOCK)) ? "NUMLOCK" : " ", | ||
| 311 | (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK)) ? "CAPS" : " ", | ||
| 312 | (host_keyboard_leds() & (1<<USB_LED_SCROLL_LOCK)) ? "SCLK" : " "); | ||
| 313 | matrix_write(matrix, led); | ||
| 314 | } | ||
| 315 | |||
| 316 | |||
| 317 | void iota_gfx_task_user(void) { | ||
| 318 | struct CharacterMatrix matrix; | ||
| 319 | |||
| 320 | #if DEBUG_TO_SCREEN | ||
| 321 | if (debug_enable) { | ||
| 322 | return; | ||
| 323 | } | ||
| 324 | #endif | ||
| 325 | |||
| 326 | matrix_clear(&matrix); | ||
| 327 | if(is_master){ | ||
| 328 | render_status(&matrix); | ||
| 329 | }else{ | ||
| 330 | render_logo(&matrix); | ||
| 331 | } | ||
| 332 | matrix_update(&display, &matrix); | ||
| 333 | } | ||
| 334 | |||
| 335 | #endif | ||
diff --git a/keyboards/sol/keymaps/kageurufu/readme.md b/keyboards/sol/keymaps/kageurufu/readme.md deleted file mode 100644 index 07e15682e..000000000 --- a/keyboards/sol/keymaps/kageurufu/readme.md +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | # KageUrufu's Sol Layout | ||
| 2 | |||
| 3 | Read the keymap for the layout, I don't want to deal with maintained ascii art | ||
| 4 | |||
| 5 | ## Customize | ||
| 6 | |||
| 7 | see `qmk_firmware/keyboards/sol/rev1/keymaps/default/rules.mk` | ||
| 8 | |||
| 9 | ``` | ||
| 10 | # Variables you can set for SOL | ||
| 11 | |||
| 12 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) | ||
| 13 | MOUSEKEY_ENABLE = no # Mouse keys(+4700) | ||
| 14 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | ||
| 15 | CONSOLE_ENABLE = yes # Console for debug(+400) | ||
| 16 | COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 17 | NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 18 | RGBLIGHT_ENABLE = yes # Enable global lighting effects. Do not enable with RGB Matrix | ||
| 19 | LED_ANIMATIONS = yes # LED animations | ||
| 20 | LED_MIRRORED = no # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master) | ||
| 21 | RGB_MATRIX_ENABLE = no # Enable per-key coordinate based RGB effects. Do not enable with RGBlight (+8500) | ||
| 22 | RGB_MATRIX_KEYPRESSES = no # Enable reactive per-key effects. Can be very laggy (+1500) | ||
| 23 | RGBLIGHT_FULL_POWER = no # Allow maximum RGB brightness. Otherwise, limited to a safe level for a normal USB-A port | ||
| 24 | UNICODE_ENABLE = no # Unicode | ||
| 25 | SWAP_HANDS_ENABLE = no # Enable one-hand typing | ||
| 26 | ENCODER_ENABLE_CUSTOM = yes # Enable rotary encoder (+90) | ||
| 27 | |||
| 28 | OLED_ENABLE = no # OLED_ENABLE (+5000) | ||
| 29 | IOS_DEVICE_ENABLE = no # Limit max brightness to connect to IOS device (iPad,iPhone) | ||
| 30 | |||
| 31 | ``` | ||
| 32 | ## Compile | ||
| 33 | |||
| 34 | go to qmk top directory. | ||
| 35 | ``` | ||
| 36 | $ cd qmk_firmware | ||
| 37 | ``` | ||
| 38 | |||
| 39 | build | ||
| 40 | ``` | ||
| 41 | $ make sol:default | ||
| 42 | ``` | ||
| 43 | |||
| 44 | After the initial flash with AVRdudess, you should be able to flash using this: | ||
| 45 | ``` | ||
| 46 | $ make sol:default:dfu | ||
| 47 | ``` \ No newline at end of file | ||
diff --git a/keyboards/zen/keymaps/kageurufu/keymap.c b/keyboards/zen/keymaps/kageurufu/keymap.c new file mode 100644 index 000000000..761100dbe --- /dev/null +++ b/keyboards/zen/keymaps/kageurufu/keymap.c | |||
| @@ -0,0 +1,62 @@ | |||
| 1 | #include QMK_KEYBOARD_H | ||
| 2 | #include "kageurufu.h" | ||
| 3 | #ifdef PROTOCOL_LUFA | ||
| 4 | #include "lufa.h" | ||
| 5 | #include "split_util.h" | ||
| 6 | #endif | ||
| 7 | |||
| 8 | extern keymap_config_t keymap_config; | ||
| 9 | extern uint8_t is_master; | ||
| 10 | |||
| 11 | |||
| 12 | #define EXPAND_LAYOUT(...) LAYOUT(__VA_ARGS__) | ||
| 13 | #define _BASE_LAYOUT( \ | ||
| 14 | _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, \ | ||
| 15 | _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, \ | ||
| 16 | _20, _21, _22, _23, _24, _25, _26, _27, _28, _29 \ | ||
| 17 | ) \ | ||
| 18 | EXPAND_LAYOUT( \ | ||
| 19 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, \ | ||
| 20 | KC_TAB, _00, _01, _02, _03, _04, _05, _06, _07, _08, _09, KC_BSLS, \ | ||
| 21 | FN_ESC, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, KC_QUOT, \ | ||
| 22 | KC_LSPO, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, KC_RSPC, \ | ||
| 23 | KC_LCTL, KC_LGUI, KC_LGUI, KC_LALT, FN, KC_SPC, KC_BSPC, KC_ENT, KC_SPC, KC_MINS, KC_EQL, KC_DOWN, KC_PGUP, KC_PGDN \ | ||
| 24 | ) | ||
| 25 | #define BASE_LAYOUT(...) _BASE_LAYOUT(__VA_ARGS__) | ||
| 26 | |||
| 27 | |||
| 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 29 | [_QWERTY] = BASE_LAYOUT( \ | ||
| 30 | _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, \ | ||
| 31 | _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, \ | ||
| 32 | _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ \ | ||
| 33 | ), | ||
| 34 | |||
| 35 | [_COLEMAK] = BASE_LAYOUT( \ | ||
| 36 | _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, \ | ||
| 37 | _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, \ | ||
| 38 | _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ \ | ||
| 39 | ), | ||
| 40 | |||
| 41 | [_COLEMAK_DH] = BASE_LAYOUT( \ | ||
| 42 | ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________, \ | ||
| 43 | ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________, \ | ||
| 44 | ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________ \ | ||
| 45 | ), | ||
| 46 | |||
| 47 | [_FN] = EXPAND_LAYOUT( \ | ||
| 48 | ________________FUNCTION_L1________________, ________________FUNCTION_R1________________, \ | ||
| 49 | ________________FUNCTION_L2________________, ________________FUNCTION_R2________________, \ | ||
| 50 | ________________FUNCTION_L3________________, ________________FUNCTION_R3________________, \ | ||
| 51 | ________________FUNCTION_L4________________, ________________FUNCTION_R4________________, \ | ||
| 52 | ________________FUNCTION_L5________________, _______, KC_DEL, ________________FUNCTION_R5________________ \ | ||
| 53 | ), | ||
| 54 | |||
| 55 | [_ADJ] = EXPAND_LAYOUT( \ | ||
| 56 | _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, \ | ||
| 57 | _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, \ | ||
| 58 | _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, \ | ||
| 59 | _________________ADJUST_L4_________________, _________________ADJUST_R4_________________, \ | ||
| 60 | _________________ADJUST_L5_________________, _______, _______, _________________ADJUST_R5_________________ \ | ||
| 61 | ) | ||
| 62 | }; | ||
diff --git a/users/kageurufu/config.h b/users/kageurufu/config.h new file mode 100644 index 000000000..938d43dd5 --- /dev/null +++ b/users/kageurufu/config.h | |||
| @@ -0,0 +1,4 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #define NO_ACTION_MACRO | ||
| 4 | #define NO_ACTION_FUNCTION | ||
diff --git a/users/kageurufu/custom_rgb.c b/users/kageurufu/custom_rgb.c new file mode 100644 index 000000000..8e99129b0 --- /dev/null +++ b/users/kageurufu/custom_rgb.c | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | #include "custom_rgb.h" | ||
| 2 | |||
| 3 | #if defined(RGBLIGHT_ENABLE) | ||
| 4 | extern rgblight_config_t rgblight_config; | ||
| 5 | rgblight_config_t _pushed_rgblight_config; | ||
| 6 | #define push_rgb_config() { if (_pushed_rgblight_config.raw == 0) { _pushed_rgblight_config.raw = rgblight_config.raw; } } | ||
| 7 | #define pop_rgb_config() { if (_pushed_rgblight_config.raw == 0) { rgblight_config.raw = _pushed_rgblight_config.raw; _pushed_rgblight_config.raw = 0; } } | ||
| 8 | #elif defined(RGB_MATRIX_ENABLE) | ||
| 9 | extern rgb_config_t rgb_matrix_config; | ||
| 10 | rgb_config_t _pushed_rgb_matrix_config; | ||
| 11 | #define push_rgb_config() _pushed_rgb_matrix_config.raw = rgb_matrix_config.raw | ||
| 12 | #define pop_rgb_config() rgb_matrix_config.raw = _pushed_rgb_matrix_config.raw | ||
| 13 | #endif | ||
| 14 | |||
| 15 | |||
| 16 | bool process_record_rgb(uint16_t keycode, keyrecord_t *record) { | ||
| 17 | return true; | ||
| 18 | } | ||
diff --git a/users/kageurufu/custom_rgb.h b/users/kageurufu/custom_rgb.h new file mode 100644 index 000000000..62d64fd4c --- /dev/null +++ b/users/kageurufu/custom_rgb.h | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #include "kageurufu.h" | ||
diff --git a/users/kageurufu/kageurufu.c b/users/kageurufu/kageurufu.c new file mode 100644 index 000000000..e16af571b --- /dev/null +++ b/users/kageurufu/kageurufu.c | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | #include "kageurufu.h" | ||
| 2 | #include "quantum.h" | ||
| 3 | #include "process_records.h" | ||
| 4 | |||
| 5 | #ifdef RGBLIGHT_ENABLE | ||
| 6 | //Following line allows macro to read current RGB settings | ||
| 7 | extern rgblight_config_t rgblight_config; | ||
| 8 | rgblight_config_t backup_rgblight_config; | ||
| 9 | |||
| 10 | __attribute__((weak)) | ||
| 11 | uint8_t RGBLIGHT_MODS[] = {0}; | ||
| 12 | #endif | ||
diff --git a/users/kageurufu/kageurufu.h b/users/kageurufu/kageurufu.h new file mode 100644 index 000000000..76a0126fe --- /dev/null +++ b/users/kageurufu/kageurufu.h | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #include "quantum.h" | ||
| 4 | #include "process_records.h" | ||
| 5 | #include "layouts.h" | ||
diff --git a/users/kageurufu/layouts.h b/users/kageurufu/layouts.h new file mode 100644 index 000000000..eccfa0700 --- /dev/null +++ b/users/kageurufu/layouts.h | |||
| @@ -0,0 +1,58 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | |||
| 4 | #define _________________NUMROW_L1_________________ KC_1, KC_2, KC_3, KC_4, KC_5 | ||
| 5 | #define _________________NUMROW_R1_________________ KC_6, KC_7, KC_8, KC_9, KC_0 | ||
| 6 | |||
| 7 | |||
| 8 | #define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T | ||
| 9 | #define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G | ||
| 10 | #define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B | ||
| 11 | |||
| 12 | #define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P | ||
| 13 | #define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN | ||
| 14 | #define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH | ||
| 15 | |||
| 16 | |||
| 17 | #define _________________COLEMAK_L1________________ KC_Q, KC_W, KC_F, KC_P, KC_G | ||
| 18 | #define _________________COLEMAK_L2________________ KC_A, KC_R, KC_S, KC_T, KC_D | ||
| 19 | #define _________________COLEMAK_L3________________ KC_Z, KC_X, KC_C, KC_V, KC_B | ||
| 20 | |||
| 21 | #define _________________COLEMAK_R1________________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN | ||
| 22 | #define _________________COLEMAK_R2________________ KC_H, KC_N, KC_E, KC_I, KC_O | ||
| 23 | #define _________________COLEMAK_R3________________ KC_K, KC_M, KC_COMM, KC_DOT, KC_SLASH | ||
| 24 | |||
| 25 | |||
| 26 | #define ______________COLEMAK_MOD_DH_L1____________ KC_Q, KC_W, KC_F, KC_P, KC_B | ||
| 27 | #define ______________COLEMAK_MOD_DH_L2____________ KC_A, KC_R, KC_S, KC_T, KC_G | ||
| 28 | #define ______________COLEMAK_MOD_DH_L3____________ KC_Z, KC_X, KC_C, KC_D, KC_V | ||
| 29 | |||
| 30 | #define ______________COLEMAK_MOD_DH_R1____________ KC_J, KC_L, KC_U, KC_Y, KC_SCLN | ||
| 31 | #define ______________COLEMAK_MOD_DH_R2____________ KC_M, KC_N, KC_E, KC_I, KC_O | ||
| 32 | #define ______________COLEMAK_MOD_DH_R3____________ KC_K, KC_H, KC_COMM, KC_DOT, KC_SLASH | ||
| 33 | |||
| 34 | |||
| 35 | #define ________________FUNCTION_L1________________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6 | ||
| 36 | #define ________________FUNCTION_L2________________ _______, KC_PGDN, KC_UP, KC_PGUP, _______, KC_LBRC | ||
| 37 | #define ________________FUNCTION_L3________________ ADJ, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______ | ||
| 38 | #define ________________FUNCTION_L4________________ _______, _______, _______, _______, _______, _______ | ||
| 39 | #define ________________FUNCTION_L5________________ _______, _______, _______, _______, ADJ, _______ | ||
| 40 | |||
| 41 | #define ________________FUNCTION_R1________________ KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 | ||
| 42 | #define ________________FUNCTION_R2________________ KC_RBRC, KC_7, KC_UP, KC_9, KC_0, KC_HOME | ||
| 43 | #define ________________FUNCTION_R3________________ _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_RBRC, KC_END | ||
| 44 | #define ________________FUNCTION_R4________________ _______, _______, _______, KC_PGDN, KC_PGUP, _______ | ||
| 45 | #define ________________FUNCTION_R5________________ ADJ, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU | ||
| 46 | |||
| 47 | |||
| 48 | #define _________________ADJUST_L1_________________ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6 | ||
| 49 | #define _________________ADJUST_L2_________________ _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______ | ||
| 50 | #define _________________ADJUST_L3_________________ _______, RGB_HUD, RGB_VAD, RGB_HUI, RGBRST, _______ | ||
| 51 | #define _________________ADJUST_L4_________________ _______, _______, _______, _______, _______, _______ | ||
| 52 | #define _________________ADJUST_L5_________________ _______, _______, _______, _______, _______, _______ | ||
| 53 | |||
| 54 | #define _________________ADJUST_R1_________________ KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 | ||
| 55 | #define _________________ADJUST_R2_________________ _______, _______, _______, _______, _______, KC_DEL | ||
| 56 | #define _________________ADJUST_R3_________________ _______, QWERTY, COLEMAK, CMAK_DH, _______, _______ | ||
| 57 | #define _________________ADJUST_R4_________________ _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI | ||
| 58 | #define _________________ADJUST_R5_________________ _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD | ||
diff --git a/users/kageurufu/process_records.c b/users/kageurufu/process_records.c new file mode 100644 index 000000000..63dbcff89 --- /dev/null +++ b/users/kageurufu/process_records.c | |||
| @@ -0,0 +1,44 @@ | |||
| 1 | #include "kageurufu.h" | ||
| 2 | |||
| 3 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 4 | switch (keycode) { | ||
| 5 | case QWERTY: | ||
| 6 | if (record->event.pressed) { | ||
| 7 | set_single_persistent_default_layer(_QWERTY); | ||
| 8 | } | ||
| 9 | return false; | ||
| 10 | break; | ||
| 11 | case COLEMAK: | ||
| 12 | if(record->event.pressed) { | ||
| 13 | set_single_persistent_default_layer(_COLEMAK); | ||
| 14 | } | ||
| 15 | return false; | ||
| 16 | break; | ||
| 17 | case RGBRST: | ||
| 18 | #ifdef RGBLIGHT_ENABLE | ||
| 19 | if (record->event.pressed) { | ||
| 20 | eeconfig_update_rgblight_default(); | ||
| 21 | rgblight_enable(); | ||
| 22 | } | ||
| 23 | #endif | ||
| 24 | break; | ||
| 25 | } | ||
| 26 | |||
| 27 | |||
| 28 | return process_record_keymap(keycode, record) && | ||
| 29 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | ||
| 30 | process_record_rgb(keycode, record) && | ||
| 31 | #endif // RGBLIGHT_ENABLE; | ||
| 32 | true; | ||
| 33 | } | ||
| 34 | |||
| 35 | __attribute__ ((weak)) | ||
| 36 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { | ||
| 37 | return true; | ||
| 38 | } | ||
| 39 | |||
| 40 | |||
| 41 | __attribute__ ((weak)) | ||
| 42 | bool process_record_rgb(uint16_t keycode, keyrecord_t *record) { | ||
| 43 | return true; | ||
| 44 | } | ||
diff --git a/users/kageurufu/process_records.h b/users/kageurufu/process_records.h new file mode 100644 index 000000000..d1c50a411 --- /dev/null +++ b/users/kageurufu/process_records.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | #pragma once | ||
| 2 | #include "kageurufu.h" | ||
| 3 | |||
| 4 | #define FN_ESC LT(_FN, KC_ESC) | ||
| 5 | #define FN MO(_FN) | ||
| 6 | #define ADJ MO(_ADJ) | ||
| 7 | |||
| 8 | enum layer_number { | ||
| 9 | _QWERTY = 0, | ||
| 10 | _COLEMAK, | ||
| 11 | _COLEMAK_DH, | ||
| 12 | _FN, | ||
| 13 | _ADJ, | ||
| 14 | ADDITIONAL_LAYER | ||
| 15 | }; | ||
| 16 | |||
| 17 | enum custom_keycodes { | ||
| 18 | QWERTY = SAFE_RANGE, | ||
| 19 | COLEMAK, | ||
| 20 | CMAK_DH, | ||
| 21 | RGBRST, | ||
| 22 | KAGEURUFU_SAFE_RANGE | ||
| 23 | }; | ||
| 24 | |||
| 25 | |||
| 26 | bool process_record_keymap(uint16_t keycode, keyrecord_t *record); | ||
| 27 | bool process_record_rgb(uint16_t keycode, keyrecord_t *record); | ||
diff --git a/keyboards/sol/keymaps/kageurufu/config.h b/users/kageurufu/readme.md index 452cdda82..57dd85d6b 100644 --- a/keyboards/sol/keymaps/kageurufu/config.h +++ b/users/kageurufu/readme.md | |||
| @@ -1,8 +1,4 @@ | |||
| 1 | /* | 1 | Copyright 2018- Franklyn Tackitt franklyn@tackitt.net @kageurufu |
| 2 | This is the c configuration file for the keymap | ||
| 3 | |||
| 4 | Copyright 2012 Jun Wako <wakojun@gmail.com> | ||
| 5 | Copyright 2015 Jack Humbert | ||
| 6 | 2 | ||
| 7 | This program is free software: you can redistribute it and/or modify | 3 | This program is free software: you can redistribute it and/or modify |
| 8 | it under the terms of the GNU General Public License as published by | 4 | it under the terms of the GNU General Public License as published by |
| @@ -16,10 +12,3 @@ GNU General Public License for more details. | |||
| 16 | 12 | ||
| 17 | You should have received a copy of the GNU General Public License | 13 | You should have received a copy of the GNU General Public License |
| 18 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 19 | */ | ||
| 20 | |||
| 21 | #pragma once | ||
| 22 | |||
| 23 | |||
| 24 | // place overrides here | ||
| 25 | |||
diff --git a/users/kageurufu/rules.mk b/users/kageurufu/rules.mk new file mode 100644 index 000000000..1bd16e262 --- /dev/null +++ b/users/kageurufu/rules.mk | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | SRC += kageurufu.c \ | ||
| 2 | process_records.c \ | ||
| 3 | custom_rgb.c | ||
| 4 | |||
| 5 | # Link time optimization, should save on firmware size | ||
| 6 | EXTRAFLAGS += -flto | ||
| 7 | |||
| 8 | |||
| 9 | # Some usual defaults | ||
| 10 | MOUSEKEY_ENABLE = no | ||
| 11 | EXTRAKEY_ENABLE = yes | ||
| 12 | COMMAND_ENABLE = yes | ||
| 13 | CONSOLE_ENABLE = yes | ||
| 14 | RGBLIGHT_ENABLE = yes | ||
| 15 | RGBLIGHT_ANIMATIONS = yes | ||
