Use ENUM to define layers

This commit is contained in:
Richard Baptist 2019-07-01 12:02:11 +02:00
parent d6be34bee6
commit 7d29a5be44
No known key found for this signature in database
GPG Key ID: 115D8B1815981F35

View File

@ -17,28 +17,29 @@ extern keymap_config_t keymap_config;
extern uint8_t is_master; extern uint8_t is_master;
#define _COLEMAKDHM 0 enum layer_names {
#define _QWERTY 1 _COLEMAKDHM,
#define _GAME 3 _QWERTY,
#define _GAME_EXT 4 _GAMING,
#define _FN 7 _GAMING_EXT,
#define _SYM 8 _FN,
#define _UTIL 9 _SYM,
#define _NAV 10 _UTIL,
#define _TEMPLATE 16 _NAV
};
#define KC_CLMK DF(0) #define KC_CLMK DF(_COLEMAKDHM)
#define KC_QWERT DF(1) #define KC_QWERT DF(_QWERTY)
#define KC_GAME DF(3) #define KC_GAME DF(_GAMING)
#define KC_T_NAV TT(10) #define KC_T_NAV TT(_NAV)
#define KC_S_NAV MO(10) #define KC_S_NAV MO(_NAV)
#define KC_FNESC LT(_FN, KC_ESC) #define KC_FNESC LT(_FN, KC_ESC)
#define KC_UTTAB LT(_UTIL, KC_TAB) #define KC_UTTAB LT(_UTIL, KC_TAB)
#define KC_SMSPC LT(_SYM, KC_SPC) #define KC_SMSPC LT(_SYM, KC_SPC)
#define KC_GMSPC LT(_GAME_EXT, KC_SPC) #define KC_GMSPC LT(_GAMING_EXT, KC_SPC)
#define KC_FNGRV LT(_FN, KC_GRV) #define KC_FNGRV LT(_FN, KC_GRV)
#define KC_LCTLT LCTL_T(KC_LT) #define KC_LCTLT LCTL_T(KC_LT)
@ -54,8 +55,6 @@ extern uint8_t is_master;
#define KC______ KC_TRNS #define KC______ KC_TRNS
#define KC_XXXXX KC_NO #define KC_XXXXX KC_NO
#define KC_LOWER LOWER
#define KC_RAISE RAISE
#define KC_RST RESET #define KC_RST RESET
#define KC_LRST RGBRST #define KC_LRST RGBRST
#define KC_LTOG RGB_TOG #define KC_LTOG RGB_TOG
@ -94,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//`--------------------' `--------------------' //`--------------------' `--------------------'
), ),
[_GAME] = LAYOUT_kc( \ [_GAMING] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------. //,-----------------------------------------. ,-----------------------------------------.
ESC, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ ESC, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\
//|------+------+------+------+------+------| |------+------+------+------+------+------| //|------+------+------+------+------+------| |------+------+------+------+------+------|
@ -106,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//`--------------------' `--------------------' //`--------------------' `--------------------'
), ),
[_GAME_EXT] = LAYOUT_kc( \ [_GAMING_EXT] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------. //,-----------------------------------------. ,-----------------------------------------.
GRV, 1, 2, _____, 3, 4, VOLU, F1, F2, F3, F4, F5,\ GRV, 1, 2, _____, 3, 4, VOLU, F1, F2, F3, F4, F5,\
//|------+------+------+------+------+------| |------+------+------+------+------+------| //|------+------+------+------+------+------| |------+------+------+------+------+------|
@ -164,8 +163,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
//|------+------+------+------+------+------+------| |------+------+------+------+------+------+------| //|------+------+------+------+------+------+------| |------+------+------+------+------+------+------|
_____, _____, SPC, KP_0, PDOT, BSPC \ _____, _____, SPC, KP_0, PDOT, BSPC \
//`--------------------' `--------------------' //`--------------------' `--------------------'
), )
/*
[_TEMPLATE] = LAYOUT_kc( \ [_TEMPLATE] = LAYOUT_kc( \
//,-----------------------------------------. ,-----------------------------------------. //,-----------------------------------------. ,-----------------------------------------.
_____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\ _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____,\
@ -177,6 +177,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_____, _____, _____, _____, _____, _____ \ _____, _____, _____, _____, _____, _____ \
//`--------------------' `--------------------' //`--------------------' `--------------------'
) )
*/
}; };
#ifdef OLED_DRIVER_ENABLE #ifdef OLED_DRIVER_ENABLE
@ -202,13 +203,13 @@ void render_status(void) {
// oled_write_P(PSTR("Layout: "), false); // oled_write_P(PSTR("Layout: "), false);
switch (biton32(default_layer_state)) { switch (biton32(default_layer_state)) {
case _COLEMAKDHM: case _COLEMAKDHM:
oled_write_P(PSTR("ORBIT"), false); oled_write_P(PSTR("CLMK"), false);
break; break;
case _GAME: case _GAMING:
oled_write_P(PSTR("GAME "), false); oled_write_P(PSTR("GAME "), false);
break; break;
case _QWERTY: case _QWERTY:
oled_write_P(PSTR("DELAY"), false); oled_write_P(PSTR("QWERT"), false);
break; break;
} }
@ -230,7 +231,7 @@ void render_status(void) {
case _NAV: case _NAV:
oled_write_P(PSTR("Gyro "), false); oled_write_P(PSTR("Gyro "), false);
break; break;
case _GAME_EXT: case _GAMING_EXT:
oled_write_P(PSTR("Ext "), false); oled_write_P(PSTR("Ext "), false);
break; break;
default: default: