forked from mirrors/qmk_firmware
552f8d81b9
* Reduce PROGMEM usage for keycode map Bit-pack the keycode bool array to gain back a small amount of flash space. The trade-off is an increase in runtime instructions when running macros. It does make the code a bit harder to read, as well as maintain. For configs that use send_string() et al, it saves ~100 bytes. * Switch to macro and common definition Rewrite the array declarations so both the unpacked (original) and packed LUT arrays can use the same value definitions. This is done by defining a macro that "knows what to do". This makes the code much easier to read and maintain. * Fix macro typos and improve perf Pack the bits in a more efficient order for extraction. And also fix the copy/paste error in the macro... * Switch fully to packed LUT Some minor reformatting. Compile tested all sendstring_xyz.h to make sure they were converted properly. Also checked that an unconverted version would generate a compile error. * Apply whitespace suggestions from code review Co-Authored-By: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com> |
||
---|---|---|
.. | ||
keymap_belgian.h | ||
keymap_bepo.h | ||
keymap_br_abnt2.h | ||
keymap_canadian_multilingual.h | ||
keymap_colemak.h | ||
keymap_danish.h | ||
keymap_dvorak.h | ||
keymap_dvp.h | ||
keymap_fr_ch.h | ||
keymap_french.h | ||
keymap_french_osx.h | ||
keymap_german.h | ||
keymap_german_ch.h | ||
keymap_german_osx.h | ||
keymap_hungarian.h | ||
keymap_italian.h | ||
keymap_italian_osx_ansi.h | ||
keymap_italian_osx_iso.h | ||
keymap_jp.h | ||
keymap_neo2.h | ||
keymap_nordic.h | ||
keymap_norman.h | ||
keymap_norwegian.h | ||
keymap_plover.h | ||
keymap_plover_dvorak.h | ||
keymap_slovenian.h | ||
keymap_spanish.h | ||
keymap_steno.h | ||
keymap_swedish.h | ||
keymap_turkish_f.h | ||
keymap_turkish_q.h | ||
keymap_uk.h | ||
keymap_workman.h | ||
sendstring_belgian.h | ||
sendstring_bepo.h | ||
sendstring_colemak.h | ||
sendstring_danish.h | ||
sendstring_dvorak.h | ||
sendstring_french.h | ||
sendstring_german.h | ||
sendstring_jis.h | ||
sendstring_norman.h | ||
sendstring_spanish.h | ||
sendstring_turkish_f.h | ||
sendstring_turkish_q.h | ||
sendstring_uk.h | ||
sendstring_workman.h |