Setup: "Colemax" - my extended configuration

I’d like to share my configuration, at least a quick overview.

My journey started before I even had a UHK. I switched over to a Colemak keyboard layout, went from full keyboard to TKL and to 60%, and started adding an ‘extend’ layer triggered by holding down CapsLock. I used AHK on Windows, and xkb on Linux to implement that layer.

When I got my UHK, I wanted to keep that setup – to keep it compatible with my muscle memory, and to be able to use the same layout even when I worked without the UHK, e.g. on my Laptop.

I called the keymap “Colemax” as it was a pimped-up version of Colemak :wink: Later I extended the “extend” layer, so it became “maxtend” :smiley:

I believe several of my ideas around “maxtend” are applicable without Colemak. Feel free to adapt it to Qwerty.

I have documented my full setup in my Maxtend Github repository (and I am still updating it), including all relevant macros.

Here’s a quick overview of the layers:

This looks like Qwerty, because I use a Colemak layout on the host OS. So the UHK needs to send US-QWERTY scancodes, which get converted on the host.

Alternate base with home-row mods:

Mod layer triggered by maxtend. Tapped on its own, maxtend works as Backspace.

Mouse layer with a few extra tweaks for browser tab navigation, Alt-Tab and Escape. You activate it by holding left Space.

The fn layer has media control, and some AltGr/Alt compatibility mappings (fn is easier to reach than AltGr/Alt).

fn2 contains a mirror map (experimental) so you can type text with only your left hand.

And finally, fn5 is a number pad. You get there by holding numtab. (Tapping works as a normal Tab key.) You can also lock/unlock this layer by holding Shift+numtab.

Find a semi-automated export of my macros here: readable version of macros

Enjoy! Let me know if it’s useful. I will keep updating the Github repo, but maybe not this post.

3 Likes

Note that I am constantly reworking and updating this config. Latest enhancements are a layer for numbers in the home row (activated by holding down right space), and some other tweaks. They will be committed to Github soon.

1 Like

Can you share your Typing Behavior settings for the secondary layer? I tried using this feature and it was unusable, even reducing the threshold.

I initialise them in $onInit so the settings in the Agent UI are irrelevant.

You can find my complete config in my Github including a text export of all the macros. I just committed and pushed the latest version a few hours ago.

1 Like