break; | break; | ||||
#endif | #endif | ||||
#ifndef NO_ACTION_KEYMAP | |||||
case ACT_KEYMAP: | case ACT_KEYMAP: | ||||
switch (action.layer.code) { | switch (action.layer.code) { | ||||
/* Keymap clear */ | /* Keymap clear */ | ||||
break; | break; | ||||
} | } | ||||
break; | break; | ||||
#endif | |||||
#ifndef NO_ACTION_OVERLAY | #ifndef NO_ACTION_OVERLAY | ||||
case ACT_OVERLAY: | case ACT_OVERLAY: |
} | } | ||||
#ifndef NO_ACTION_KEYMAP | |||||
/* | /* | ||||
* Keymap Layer (0-15) | * Keymap Layer (0-15) | ||||
*/ | */ | ||||
{ | { | ||||
debug_hex16(keymap_stat); debug("("); debug_dec(keymap_get_layer()); debug(")"); | debug_hex16(keymap_stat); debug("("); debug_dec(keymap_get_layer()); debug(")"); | ||||
} | } | ||||
#endif | |||||
} | } | ||||
#endif | #endif | ||||
#ifndef NO_ACTION_KEYMAP | |||||
/* keymap: top layer first */ | /* keymap: top layer first */ | ||||
for (int8_t i = 15; i >= 0; i--) { | for (int8_t i = 15; i >= 0; i--) { | ||||
if (keymap_stat & (1<<i)) { | if (keymap_stat & (1<<i)) { | ||||
} | } | ||||
} | } | ||||
} | } | ||||
#endif | |||||
/* default layer */ | /* default layer */ | ||||
action = action_for_key(default_layer, key); | action = action_for_key(default_layer, key); |
/* | /* | ||||
* Keymap Layer | * Keymap Layer | ||||
*/ | */ | ||||
#ifndef NO_ACTION_KEYMAP | |||||
extern uint16_t keymap_stat; | extern uint16_t keymap_stat; | ||||
/* return current active layer */ | /* return current active layer */ | ||||
uint8_t keymap_get_layer(void); | uint8_t keymap_get_layer(void); | ||||
void keymap_and(uint16_t stat); | void keymap_and(uint16_t stat); | ||||
void keymap_xor(uint16_t stat); | void keymap_xor(uint16_t stat); | ||||
void keymap_debug(void); | void keymap_debug(void); | ||||
#else | |||||
#define keymap_stat 0 | |||||
#define keymap_get_layer() | |||||
#define keymap_clear() | |||||
#define keymap_set(stat) | |||||
#define keymap_move(layer) | |||||
#define keymap_on(layer) | |||||
#define keymap_off(layer) | |||||
#define keymap_invert(layer) | |||||
#define keymap_or(stat) | |||||
#define keymap_and(stat) | |||||
#define keymap_xor(stat) | |||||
#define keymap_debug() | |||||
#endif | |||||
/* | /* |
/* disable print */ | /* disable print */ | ||||
//#define NO_PRINT | //#define NO_PRINT | ||||
#define NO_ACTION_KEYMAP | |||||
#define NO_ACTION_OVERLAY | #define NO_ACTION_OVERLAY | ||||
#define NO_ACTION_TAPPING | #define NO_ACTION_TAPPING | ||||
#define NO_ACTION_MACRO | #define NO_ACTION_MACRO |