# QMK keyboard firmware Topics: [[Mechanical keyboard]] ## Subtopics - ## Building on Fedora Silverblue Since I'm using [[Bluefin]], I can't easily install the whole QMK toolchain. That's why I'm using the [Docker workflow](https://docs.qmk.fm/getting_started_docker). ## Resolving timing issues with mod-tap MrLinuxFish on [Discord](https://discordapp.com/channels/574598631399751680/663573863480950808/740989368784650342): ```c // Fix problems with fast typing and homerow mods #define TAPPING_TERM 125 #define PERMISSIVE_HOLD_PER_KEY #define IGNORE_MOD_TAP_INTERRUPT #define TAPPING_FORCE_HOLD ``` Turning off permissive hold for the [[Home Row Mods]] fixes a lot of issues while still allowing thumb mods to work well. ```c // Disabling permissive hold for home row mods. bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { // {{{ switch (keycode) { case SHFT_T: case SHFT_N: case SFT_ENT: case CTRL_S: case CTRL_E: case ALT_R: case ALT_I: case AGR_X: case AGR_DOT: case GUI_A: case GUI_O: // This actually *disables* the permissive hold for these keys. // See issue https://github.com/qmk/qmk_firmware/issues/8999 return true; default: return false; } } ``` You can also do tapping term per key to reduce mis-presses of mods/keys. ## Bookmarks - [Corne keymap with OLED and extensive tapping logic](https://gist.github.com/johnm/e3c129b20bbcae97601e547a7dd9fa0a) - [QMK macro examples](https://getreuer.info/posts/keyboards/macros) ## Related topics - [[Home Row Mods]]