keyboard-config/chocofi/README.org

67 lines
2.7 KiB
Org Mode
Raw Normal View History

* 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
2025-01-05 23:27:55 +01:00
Alpha layer is Colemak-DH mod.
2023-09-08 22:00:16 +02:00
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
2023-09-08 22:00:16 +02:00
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.
2023-09-02 14:00:18 +02:00
[[./qmk-config.png]]
** Setup
2025-01-05 23:27:55 +01:00
Because my board uses a sea Pi Micro (RPi2040 type), I have to mount
the controller as a file system and copy the firmware file to that.
Most other microcontrollers want to be directly connected and flashed via USB.
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
2025-01-05 23:27:55 +01:00
assumes usb-c of the right-hand half 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
2023-09-08 22:00:16 +02:00
** 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)
2023-09-08 22:00:16 +02:00
- 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
2023-09-08 22:00:16 +02:00
- 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)