#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 _BASE 0 #define _FN1 1 #define _FN2 2 enum custom_keycodes { QWERTY = SAFE_RANGE, }; #define KC_ KC_TRNS #define _______ KC_TRNS #define XXXXXXX KC_NO #define KC_FN1 LT(_FN1, KC_NO) #define KC_FN2 LT(_FN2, KC_NO) #define KC_SPFN LT(_FN1, KC_SPACE) #define KC_RST RESET #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( //,----+----+----+----+----+----|----+----+----+----+----+----+----. TAB , Q , W , E , R , T , Y , U , I , O , P , DEL,BSPC, //|----`----`----`----`----`----|----`----`----`----`----`----`----| ESC , A , S , D , F , G , H , J , K , L ,QUOT, SCLN , //|-----`----`----`----`----`----|----`----`----`----`----`--------| LSFT , Z , X , C , V , B , N , M ,COMM,DOT ,SLSH, PGUP , //|-------`----`----`----`----`----|----`----`----`----`----`------| LCTL ,LALT, FN1, ,ENTER , SPACE , FN2 , HOME, END , PGDN //`-----+----+-----+-------------|--------+-----+-----+-----+------' ), [_FN1] = LAYOUT_kc( //,----+----+----+----+----+----|----+----+----+----+----+----+----. GRV , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , , , //|----`----`----`----`----`----|----`----`----`----`----`----`----| DEL , F1 ,F2 , F3 , F4 , F5 , F6 ,MINS, EQL,LBRC,RBRC, BSLS , //|-----`----`----`----`----`----|----`----`----`----`----`--------| , F7 , F8 , F9 , F10, F11, F12, , , , UP , , //|-------`----`----`----`----`----|----`----`----`----`----`------| , , , , , ,RGUI,LEFT ,DOWN ,RIGHT //`-----+----+-----+-------------|--------+-----+-----+-----+------' ), [_FN2] = LAYOUT_kc( //,----+----+----+----+----+----|----+----+----+----+----+----+----. TILD,EXLM, AT ,HASH,DLR ,PERC,CIRC,AMPR,ASTR,LPRN,RPRN, , , //|----`----`----`----`----`----|----`----`----`----`----`----`----| DEL ,RHUI,RSAI,RVAI, , , ,UNDS,PLUS,LCBR,RCBR, PIPE , //|-----`----`----`----`----`----|----`----`----`----`----`--------| ,RHUD,RSAD,RVAD, , ,VOLU,VOLD, , , UP , , //|-------`----`----`----`----`----|----`----`----`----`----`------| ,RTOG,RMOD , , , , , LEFT, DOWN, RIGHT //`-----+----+-----+-------------|--------+-----+-----+-----+------' ) };