jgosmann/Karabiner-Elements-Neo

Home/end key behaviour

Closed this issue · 3 comments

From this and this comment:

After trying it for a few minutes, the only odd thing I notice is Home/Pos 1 & End (i.e., Mod4+U/O (Neo) = Mod4+A/G (Qwertz labels)). In my El Capitan / Karabiner setup, they move the cursor to the beginning/end of line (when in a text field), while now they scroll to the top/bottom. (Maybe that’s actually intended, but I’m definitely not used to it.)

CapsLock/Right Cmd + Qwerty-A used to jump to the beginning of the line, but now instead scrolls up.

I think those keys are supposed to map to the Home and End keys in the Neo layout (verify this). It seems that the macOS behaviour for these keys is supposed to be what it is right now (unfortunately I do not have a keyboard with actual Home and Endkeys to test). But it seems that people (and me) prefer to have those keys mapped as what probably isCmd+LeftandCmd+Right`.

What is more important?

  • Stay true to the actual Neo2 layout?
  • Keep the behaviour from previous Neo2 implementations on the Mac?
  • Use the behaviour most people prefer?

I suppose ideally this could be configured, but this would be a more complex change and I would need to understand more of the code base to do it.

You have it exactly right; I don’t think there’s an objectively “true” answer to your quesions. But I think following the principle of least astonishment for existing users, it would be best to stay consistent with Karabiner (i.e., trigger Cmd+Left/Right).

I think those keys are supposed to map to the Home and End keys in the Neo layout (verify this).

This is correct; see the description of Neo navigation block symbols

It seems that the macOS behaviour for these keys is supposed to be what it is right now

Yup, this is also true. (Some people aren’t too happy about it though.)

I merged the PR #3 to map to Cmd+Left/Right instead of Home/End because it is more consistent with prior behaviour and seems more useful to me and everyone else who voiced an opinion. As long as no one requests to map to Home/End I will not look further into supporting both options.