* Chocofi 36 with QMK ** The keyboard https://github.com/pashutk/chocofi/ I got a prebuilt one with hotswap and seapi picro presoldered and added my choc v1 brown switches. ** The Keymap Alpha layer is ColemakDH. Since a lot of time is spent navigating code I use a locked =NAV= layer, which makes it easy to move the cursor/screen. Most of my time coding is spent in VSCode. Therefore, often used combos like =Ctrl+f=, =Ctrl+h= (find an replace) and their shifted variants (find/replace in project) are available in the =NAV= layer with single keystrokes. [[./qmk-config.png]] ** Setup 1. follow QMK initial setup (python venv with pip) 2. link this directory into =qmk_firmware/keyboards/crkbd/rev1/keymaps/choc_colemak_36= 3. compile and flash assumes right usbc is connected #+begin_src bash cd ~/src/qmk_firmware/ && source env/bin/activate qmk compile --keyboard=crkbd/rev1 --keymap=choc_colemak_36 -e CONVERT_TO=promicro_rp2040 sudo mount /dev/sdb? /mnt/ sudo cp crkbd_rev1_choc_colemak_36_promicro_rp2040.uf2 /mnt/ sudo umount /mnt #+end_src ** TODO Missing stuff - activate number layer with a left-hand key - additional to FUN_NAV layer, create a pure nav layer - remove HomeRowMods from FUN_NAV layer - add useful shortcuts to the new PURE_NAV layer (e.g. WM_keys) - backtick key - umlauts and sharp s - euro € key ** Ideas for improvement - for nav layer, maybe add combined keys for Ctrl+Shift, Ctrl+Alt and Shift+Alt - this seems like a great example of composed layers and support for different environments https://github.com/0x64746b/qmk_firmware/blob/chocofi/keyboards/chocofi/keymaps/dtk35/keymap.c - https://github.com/qmk/qmk_firmware/blob/master/layouts/community/ergodox/german-kinergo/keymap.c#L101 - https://github.com/manna-harbour/miryoku_qmk/blob/miryoku/users/manna-harbour_miryoku/readme.org - HomeRowMods/BottomRowMods and other ideas: https://www.reddit.com/r/ErgoMechKeyboards/comments/tiejpp/home_row_mods_what_works_for_you/ - https://precondition.github.io/home-row-mods#implementation - split up =SYM_NUM= layer, move missing symbols (from NAV layer to SYMBOLS layer) - hints for better symbols layers: https://getreuer.info/posts/keyboards/symbol-layer/index.html - make =.= and =,= available in new =NUM= layer for easier number input - build a dedicated GUI Nav layer for i3wm/sway - and probably Windows/KDE window actions - make =select words= work (by emulating Ctrl+Shift+Left/Right)