Guard remapping logic with MAGIC_ENABLE (#25537)

* Only perform key and mod remapping in keycode_config() and mod_config() when MAGIC_ENABLE is defined.
* If not set, these functions now return the original keycode or modifier unchanged.
* Reduces firmware size, and unnecessary code when MAGIC_ENABLE is not enabled.
* Removed space saving suggestion with magic functions from squeezing AVR documentation
This commit is contained in:
フィルターペーパー 2025-11-07 07:03:28 +08:00 committed by GitHub
parent 01d81b9550
commit 1a991ffd24
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 6 additions and 20 deletions

View file

@ -24,6 +24,7 @@ keymap_config_t keymap_config;
* and will return the corrected keycode, when appropriate.
*/
__attribute__((weak)) uint16_t keycode_config(uint16_t keycode) {
#ifdef MAGIC_ENABLE
switch (keycode) {
case KC_CAPS_LOCK:
case KC_LOCKING_CAPS_LOCK:
@ -115,6 +116,9 @@ __attribute__((weak)) uint16_t keycode_config(uint16_t keycode) {
default:
return keycode;
}
#else
return keycode;
#endif // MAGIC_ENABLE
}
/** \brief mod_config
@ -124,6 +128,7 @@ __attribute__((weak)) uint16_t keycode_config(uint16_t keycode) {
*/
__attribute__((weak)) uint8_t mod_config(uint8_t mod) {
#ifdef MAGIC_ENABLE
/**
* Note: This function is for the 5-bit packed mods, NOT the full 8-bit mods.
* More info about the mods can be seen in modifiers.h.
@ -161,5 +166,6 @@ __attribute__((weak)) uint8_t mod_config(uint8_t mod) {
mod &= ~MOD_RGUI;
}
#endif // MAGIC_ENABLE
return mod;
}