Hjkl or jkl;? Reasons and ergonomics

Ok so hjkl is the default and I’m not trying to suggest another default. I know the historical, vi backwards compatibility reasons. I also know it’s good for international keyboards because ; is not in the same place in every keyboard. So let’s put these reasons aside. I am a new nvim user, I’m using a Turkish keyboard, it has been a week and I couldn’t get used to hjkl. First I thought it was about my dependency on arrow keys but just for the funsies I mapped them to jklş (jkl; on my keyboard) and everything started to make sense. I basically shifted the row starting from h to right by one (h become j, j become k… / become h) this made pressing : easier (İ in my case) and my hands are in the center in my semi-split keyboard. That made me question things such as “Was there another reason for hjkl? An ergonomic one? Why does everyone so set on it? Is it because it’s the default?” So before I completely wired my brain to jkl; I decided to ask here. Is there an ergonomical advantage with hjkl over jkl;? Please don’t list non-ergonomical advantages like history and backwards compability.

jkl; is probably more ergonomic, but every other program or website that supports vi keybindings will be still using hjkl (like gmail for example). And you can’t always change it. And believe me, once you get used to vim you want it everywhere.

For me it doesn’t really matter, I’m happy with hjkl because its standard, and if something supports vi keys it will work with hjkl. I was using colemak layout for few years and I never bothered remaping, I still used hjkl even thoug it was on hynu positions of querty.

1 Like

I see, so no ergonomic reasons…
Well, for now the only vi binded program I’m using aside from nvim itself is qutebrowser for looking at docs while codding. Already remapped that to jkl; Also a little part of my plasma. My keyboard usage is at a standard user levels at the moment and not vim user levels :slight_smile:

Yes, no ergonomics. But also not historical, backward compatibility one. It would be forward compatibility reason. As you said yo don’t use many vilike apps ** for now**

Also, ; is actual motion in vim.

I have just shifted every key by one character starting from h ending with / also h become / since / wouldn’t be represented if I didn’t assign anything to it.

What do you mean? / is used to start a search in the current buffer.

Ah, my bad, I meant the pipe “|” symbol.