Something went wrong. Try again.
keyboard stuff
Something went wrong. Try again.
2.2 kB · 76 lines
C
at master
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677// Copyright 2025 QMK// SPDX-License-Identifier: GPL-2.0-or-later
#include "process_quantum.h"#include "quantum.h"
#ifdef ENABLE_COMPILE_KEYCODE/** \brief Compiles the firmware, and adds the flash command based on keyboard bootloader */static void send_make_command(void) {# ifdef NO_ACTION_ONESHOT const uint8_t temp_mod = mod_config(get_mods());# else const uint8_t temp_mod = mod_config(get_mods() | get_oneshot_mods()); clear_oneshot_mods();# endif clear_mods();
SEND_STRING_DELAY("qmk", TAP_CODE_DELAY); if (temp_mod & MOD_MASK_SHIFT) { // if shift is held, flash rather than compile SEND_STRING_DELAY(" flash ", TAP_CODE_DELAY); } else { SEND_STRING_DELAY(" compile ", TAP_CODE_DELAY); }# if defined(CONVERTER_ENABLED) SEND_STRING_DELAY("-kb " QMK_KEYBOARD " -km " QMK_KEYMAP " -e CONVERT_TO=" CONVERTER_TARGET SS_TAP(X_ENTER), TAP_CODE_DELAY);# else SEND_STRING_DELAY("-kb " QMK_KEYBOARD " -km " QMK_KEYMAP SS_TAP(X_ENTER), TAP_CODE_DELAY);# endif if (temp_mod & MOD_MASK_SHIFT && temp_mod & MOD_MASK_CTRL) { reset_keyboard(); }}#endif
bool process_quantum(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { switch (keycode) {#ifndef NO_RESET case QK_BOOTLOADER: reset_keyboard(); return false; case QK_REBOOT: soft_reset_keyboard(); return false;#endif#ifndef NO_DEBUG case QK_DEBUG_TOGGLE: debug_enable ^= 1; if (debug_enable) { print("DEBUG: enabled.\n"); } else { print("DEBUG: disabled.\n"); } return false;#endif case QK_CLEAR_EEPROM:#ifdef NO_RESET eeconfig_init();#else eeconfig_disable(); soft_reset_keyboard();#endif return false;#ifdef ENABLE_COMPILE_KEYCODE case QK_MAKE: send_make_command(); return false;#endif default: break; } }
return true;}