// -*- mode: c++ -*- #pragma once #include #include "keymap-layers.h" enum { MACRO_VERSION_INFO, MACRO_ANY, }; #ifndef BUILD_INFORMATION #define BUILD_INFORMATION "locally built" #endif static void versionInfoMacro(uint8_t keyState) { if (keyToggledOn(keyState)) { Macros.type(PSTR("Keyboardio Model 100 - Kaleidoscope ")); Macros.type(PSTR(BUILD_INFORMATION)); } } static void anyKeyMacro(KeyEvent &event) { if (keyToggledOn(event.state)) { event.key.setKeyCode(Key_A.getKeyCode() + (uint8_t)(millis() % 36)); event.key.setFlags(0); } } const macro_t *macroAction(uint8_t macroIndex, KeyEvent &event) { switch (macroIndex) { case MACRO_VERSION_INFO: versionInfoMacro(event.state); break; case MACRO_ANY: anyKeyMacro(event); break; } return MACRO_NONE; }