Mini Homerow with KM / One problem left to solve

Inspired by @kevinb (and others), I set up a mini (mini :slight_smile:) Homerow with KM, for example, to navigate within a text. I’m very happy with the result.

Just a quick note on how it works:

When “F” is pressed, “J” moves the cursor one character to the left. “K” moves the cursor to the right.

If “F” and “D” are pressed, the text is selected, with “J” and “K”. Like this:

Text can be copied and moved, etc.

This all works well. There’s just one problem I can’t solve.

“F” has two functions: It activates a palette when the key is held down, and it simply types “F” when the key is tapped briefly (down/up).

So the letter “F” is typed when the key is released. All other letters are typed when the key is pressed.

When typing the word “for” quickly, this results in “ofr” being typed. I tried to correct this with a “typed string trigger” so that “of” automatically becomes “fo”, but unfortunately, that doesn’t work.

Does anyone have an idea how this could be fixed? Thank you very much!

And in case anyone wants to take a look, here are the macros.

:rocket:F (KOPIE).kmmacros|attachment (6.0 KB)

:rocket:Palette Navigation Macros.kmmacros|attachment (100.1 KB)

1 Like

Good!

I haven’t analysed your groups of macros; you know my thoughts about choosing KM to take on such keyboard challenges, but I can see straight away that you have put a lot of careful work into it all, so I hope someone will be able to help you out!

I can however offer some general thoughts about issues that may well be relevant to the task.

A note about terminology: home row refers to the keys that a touch typist’s fingers return to as a starting point for further typing. For the QWERTY layout, that’s ASDF for the left hand and JKL: for the right hand.

Since pressing keys in the home row requires no reaching, it is certainly the area that one should try to get the most use out of.

That’s the appeal of “home row mods”, although they are exacting to set up. That is because getting the timing right to fit the cadence of one’s own individual style of typing involves the adjustment of a lot of available parameters, and one has to get used to typing rather more precisely too—although that is really a benefit!

Such issues mean that you might always have to type slowly while you are using your macro.

So in effect you are extending the use of F so that it can act somewhat like a switch to a layer that contains your arrow keys. To give a comparison, in the QMK language for programmable keyboards, the syntax is:

LT(layer, kc) - momentarily activates layer when held, and sends kc when tapped
Layers | QMK Firmware

For example, if you had put your arrow keys in a layer called CURSOR, the code to do this would be: LT(_CURSOR, KC_F).

By the way, you might find L to be a better choice of key for the right arrow key, since then you could conveniently use K for down, along with, logically, I for up.

I doubt very much that you will now be able to type anything with an F in it quickly. :wink:

You could try using a separate text expansion application to do that.

Danke @kevinb :slight_smile:

That's why I said, a mini, mini Homerow. The fingers are in their starting position.

The problem seems to be that “F” activates a macro group. I think that somehow prevents the string from working.

Apart from this “detail,” everything would work perfectly. It's always the “details” :joy:

I still need to experiment a bit more.

1 Like