a03aa301de
* disambiguate Bootmagic rules in keymaps The files edited by this commit were added at a point in time where `BOOTMAGIC_ENABLE = yes` enabled full Bootmagic. This commit edits the files to specify that full Bootmagic is intended. * remove BOOTMAGIC_ENABLE=full setting * unify commented BOOTMAGIC_ENABLE rules in keyboards Explicitly sets `BOOTMAGIC_ENABLE = no` in keyboards where the rule was commented out. Command: ``` find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-zA-Z]\+\).*;\1 = no # Virtual DIP switch configuration;g' {} + ``` * remove commented Bootmagic rules from keymap/user level Command: ``` find keyboards/ layouts/ users/ -type f -name 'rules.mk' -exec sed -i -e '/#.*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*/d' {} + ``` * update keyboard BOOTMAGIC_ENABLE rule formatting Sets the formatting of BOOTMAGIC_ENABLE rules to `BOOTMAGIC_ENABLE = [value]`, without the inline comments (which will be replaced later). Command: ``` find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' + ``` * update keyboards' BOOTMAGIC_ENABLE settings Updates keyboard `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used. Command: ``` find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = \)full;\1lite;g' '{}' + ``` * update keymap/user BOOTMAGIC_ENABLE settings Updates keymap/user `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used. Commands: ``` find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' + find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' + ``` * remove and replace inline comments in keyboards and keymap/user files Removes and replaces the inline comments, which have been updated to read `Enable Bootmagic Lite`. Commands: ``` find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' + find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' + find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = lite\);\1 # Enable Bootmagic Lite;g' '{}' + find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = yes\);\1 # Enable Bootmagic Lite;g' '{}' + find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = no\);\1 # Enable Bootmagic Lite;g' '{}' + ``` * rename improperly named makefiles Some files intended to be used as makefiles had improper names causing them to not be used as intended when building. This commit corrects the filenames of the affected files. * update renamed file with new rule formatting * update QMK's template files Updates QMK's `rules.mk` templates to use the new inline comment. * update QMK Docs - remove documentation of full Bootmagic - update links to Bootmagic Lite doc - add doc for Magic Keycodes * rules.mk patch for coarse/ixora and coarse/vinta |
||
---|---|---|
.. | ||
config.h | ||
keymap.c | ||
readme.md | ||
rules.mk |
Townk's Keymap
Trying to take care of an enjury on my arm I borrow an ergonomic keyboard from a frient (Kinesis Advantage).
I really enjoyed my time with it but there were some anoyancies:
- The curvature on the keys bothered me since I'm a Vim user and using the motion keys on my editor was awkard.
- I had to spend too much time remapping the keyboard to make some symbol keys more accessible to me.
- The fact that my hands had to stay close to each other was a bit stressfull to my sholders.
After a long research I find out that Ergodox EZ would be perfect for my needs and purchase one. Before the keyboard even got in my hands I started to think on the layout I would use on it and soon enough I planed couple adjustments from the Kinesis I was using so far.
The layout
Here are the layout mapping in images so you can have a glimpse on it:
Notice that, differently from the default behavior, my layer keys are not transparent by default, which means that if you press any non-labeled white key, nothing will be handled to the OS.
One shot keys
It all started with the access to the function keys (F1, F2, F3...), since those keys are located on a different layer I needed a way to press them with minimal effort without disrupting my flow.
For me, togglihg a layer to press a button and than toggle it back is a waste of time (although I admit it's a single tap from what I have), so I decided to do it as a one shot key. I could press it and the next pressed key would be handled by the target layer which just after it delivers the key to the OS it would get back to the previous layer.
After setting up my layout to do just that I realized that occasionally I would stop myseld on the middle of the process and the one shot layer would be still triggered until I press any other key. So to prevent me from tapping keys I don't want I added a timeout of 3 seconds for the one shot actions.
Ultimately I tested the shift key as a one shot one and really like it, so here you have it, all the one shot keys on my layout.
Glossary
If you're not familiar with the Mac symbols used on some keys, here is a reference to them:
Symbol | Description |
---|---|
⌘ | Command |
⇪ | Caps Lock |
⇧ | Shift |
⌥ | Option (alt) |
⎋ | Esc |
⇥ | Tab forward |
⇤ | Tab backward |
⌃ | Control |
␣ | Space |
⌫ | Backspace |
⌦ | Delete |
⏎ | Enter |
⌤ | Return |
⌽ | Power on/off button |
↖ | Home |
↘ | End |
⇞ | Page up |
⇟ | Page down |
⌧ | Clear |