This 34 key keymap was inspired by Callum's layout for QMK and was conceived with these principles in mind:
-
Every key should have one way to type it
-
Avoid hold-taps for regular typing to discourage holding keys and eliminate the chance of misfiring.
- An excecption was made to accomodate
GLOBE
at theZ
key position. This allows me to trigger my window manager of choice on macOS (Swish) and to use iPadOS shortcuts that require this key.
- An excecption was made to accomodate
-
Thumbs do all the regular layer changes.
&numword
, togglingNAV
for extended edits/mouse usage, and toggle of gaming layers are all made by combos. -
Keyboard functionality (such as
&bootloader
and bluetooth toggles) is hidden behind combos available fromFUN
layer. This makes them purposelly difficult to trigger by accident, while still being still being accessible when needed; -
Combos should be convenience only and always preceded by
require-prior-idle
to avoid misfiring.
Its main use is writing prose in both English and Portuguese in both macOS and iPadOS. I use in on a Ferris Sweep with nice!nanos v2. I find it particularly great to type on when paired with very light and silent switches, such as LowProKB.ca's Amnbienz twilight and nocturnals.
Here's the render made with caksoylar's Keymap Drawer:
QWERTY was kept to retain muscle memory, with a few changes:
- On
DEF
,;
was moved down and made way to'
as this is far more useful to make accents (as dead key) and quotations /
was moved toSYM
This emulates in ZMK the LA_NAV
and LA_SYM
custom behaviors found in Callum's QMK keymap.
A crazy long timeout (1 day) was assigned to &sk
behavior in this keymap. So there's no rush to combine mods with either keycodes from DEF
or the active layer.
&mo
keys were replaced by a custom layer-cancel macro (&lc
) that sends a &kp K_CANCEL
tap alongside the &mo
command within a 0ms interval. This design allows for canceling mods when invoking SYM
, NAV
, of FUN
, while keeping them triggered for typing keys that exists only on DEF
layer.
It was built with the parametrized macros behavior to make the .keymap
file easier to read and change.
- I recommend pgetreuer’s post on how to set up a symbols layer that works for you.
- ^`~ dead keys are on home row making them trivial to type accented vowels which are common in Portuguese prose
- Basic math operations and other symbols that usually follow numbers can be typed with the left hand (very useful from within
num_word
’s&sl SYM
on the G key position); - Parenthesis and braces are mirrored on both hands, left opens, right closes them. Slashes are also mirrored.
- Shifted punctuation symbols that exist in
DEF
and are much used in prose (”
and:
) fromDEF
were assigned to SYM to a. make possible to trigger them single handed via&lc SYM
b. make them more convenient to type punctuated numbers fromFUN
such as when typing hours or dates or measurements (e.g. 00:00 will not require one to move the left thumb to thumbRSHFT
and then back to the&lc NAV
to trigger the tri-layer, same thing happens when typing 0’00”) - Common markdown symbols (# and *) are close to home row.
- Requires auto-layer module.
&numword
is accessible as a combo through D
and &lc NAV
(leftmost thumb).
Numpad layer sits at the left half of the keyboard to make it usable while holding the mouse on the right.
This behavior allows for quick entering numbers in a numpad layout and will disable it upon key press of any key than a number, math symbol or BACKSPACE
/DELETE
.
This behavior was first introduced by Jonas Hietala and this ZMK implementation was made by urob.
5. Combos for one handed use of common action keys and in combination with the mouse on the right hand
Combos where added to make it possible to use the keyboard one handed.
- There’s
&sl SYM
on a combo with both right thumbs to make it possible to enter symbols. - One handed number entering can be done via
&num_word
combo (see #4). - This goes well with toggling the
NAV
layer (combo with both left thumbs) for extended mouse edits while keeping these keys available with the left hand:QA
forESC
RF
forENTER
TG
forBACKSPACE
GB
forDELETE
- Requires tri-state module.
This allows for CMD+TAB
with one key from NAV
. It will simulate holding CMD
between TAB
keypresses for as long as you keep the &lc NAV
key held.
I play Age of Empires II Definitive Edition and made a series of 3 layers (AOE
, AGS
and ABS
) that go well with mouse usage on the right hand. They're certainly not needed, but really tucked away by a ZXC
combo that only can be activated from within a leftmost thumb layer from either gaming (AGS
) or default (NAV
) modes.
Some of the features used in this keymap require the implementation of non-vanilla ZMK, such as tri-state auto-layer modules. For that, I've pointed my west.yml
to urob's repo that already has these features merged.