#include "template.h" // Add reconfigurable functions here, for keymap customization // This allows for a global, userspace functions, and continued // customization of the keymap. Use _keymap instead of _user // functions in the keymaps __attribute__ ((weak)) void matrix_init_keymap(void) {} // Call user matrix init, then call the keymap's init function void matrix_init_user(void) { matrix_init_keymap(); } __attribute__ ((weak)) void matrix_scan_keymap(void) {} // No global matrix scan code, so just run keymap's matix // scan function void matrix_scan_user(void) { matrix_scan_keymap(); } __attribute__ ((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; } // Defines actions tor my global custom keycodes. Defined in drashna.h file // Then runs the _keymap's recod handier if not processed here, // And use "NEWPLACEHOLDER" for new safe range bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case KC_MAKE: if (!record->event.pressed) { SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU)) ":dfu" #elif defined(BOOTLOADER_HALFKAY) ":teensy" #elif defined(BOOTLOADER_CATERINA) ":avrdude" #endif SS_TAP(X_ENTER)); } return false; break; case VRSN: if (record->event.pressed) { SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); } return false; break; } return process_record_keymap(keycode, record); } __attribute__ ((weak)) uint32_t layer_state_set_keymap (uint32_t state) { return state; } uint32_t layer_state_set_user (uint32_t state) { return layer_state_set_keymap (state); } __attribute__ ((weak)) void led_set_keymap(uint8_t usb_led) {} void led_set_user(uint8_t usb_led) { led_set_keymap(usb_led); } __attribute__ ((weak)) void suspend_power_down_keymap(void) {} void suspend_power_down_user(void) { suspend_power_down_keymap(); } __attribute__ ((weak)) void suspend_wakeup_init_keymap(void) {} void suspend_wakeup_init_user(void) { suspend_wakeup_init_keymap(); #ifdef KEYBOARD_ergodox_ez wait_ms(10); #endif } __attribute__ ((weak)) void startup_keymap(void) {} void startup_user (void) { #ifdef RGBLIGHT_ENABLE matrix_init_rgb(); #endif //RGBLIGHT_ENABLE startup_keymap(); } __attribute__ ((weak)) void shutdown_keymap(void) {} void shutdown_user (void) { shutdown_keymap(); }