1 #include QMK_KEYBOARD_H
2 #include "action_layer.h"
5 extern keymap_config_t keymap_config;
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.
15 enum custom_keycodes {
21 // Fillers to make layering more clear
22 #define _______ KC_TRNS
25 // Defines for task manager and such
26 #define CALTDEL LCTL(LALT(KC_DEL))
27 #define TSKMGR LCTL(LSFT(KC_ESC))
29 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
32 * ,-----------------------------------------------.
33 * | FN_2 | 2 |TSKMGR |CALTDEL| ESC | FN_1 |
34 * `-----------------------------------------------'
36 [_DEFAULT] = LAYOUT( \
37 MO(_FN_2), KC_2, TSKMGR, CALTDEL, KC_ESC, MO(_FN_1)
41 * ,-----------------------------------------------.
42 * |RGB_TOG|RGB_HUD|RGB_HUI|RGB_SAD|RGB_SAI| FN_1 |
43 * `-----------------------------------------------'
46 RGB_TOG, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______
50 * ,-----------------------------------------------.
51 * | FN_2 |RGB_VAD|RGB_VAI|RGB_MOD|TSKMGR | RESET |
52 * `-----------------------------------------------'
55 _______, RGB_VAD, RGB_VAI, RGB_MOD, TSKMGR, RESET
60 void persistant_default_layer_set(uint16_t default_layer) {
61 eeconfig_update_default_layer(default_layer);
62 default_layer_set(default_layer);
65 bool process_record_user(uint16_t keycode, keyrecord_t *record) {