News for hackers. Stuff that matters.
Re:i3 4.18 by ppseafield on Monday February 17, 2020 @03:10PM (#22350303)
IIRC it was deliberate so that users wouldn't have to move off the home row. The User's Guide states this is the reasoning behind it.

> To move the focus between the two terminals, you can use the direction keys which you may know from the editor vi. However, in i3, your homerow is used for these keys (in vi, the keys are shifted to the left by one for compatibility with most keyboard layouts). Therefore, $mod+j is left, $mod+k is down, $mod+l is up and $mod+; is right.

https://i3wm.org/docs/userguide.html

Re:i3 4.18 by jolmg on Monday February 17, 2020 @04:27PM (#22350960)
> in vi, the keys are shifted to the left by one for compatibility with most keyboard layouts

I wonder where they got that idea. The keys are "hjkl" simply because they were inscribed with arrows in the machine Bill Joy used when creating vi[1][2]. From [1]:

> Joy used a Lear Siegler ADM-3A terminal... the keys h,j,k,l served double duty as cursor movement keys and were inscribed with arrows, which is why vi uses them in that way.

The StackExchange question has a picture of the keys.

[1] https://en.wikipedia.org/wiki/Vi#Creation

[2] https://vi.stackexchange.com/a/9315/14283

Re:i3 4.18 by secure on Monday February 17, 2020 @04:34PM (#22351045)
I remember reading about that, but it must have been after I wrote that part of the userguide 11 years ago: https://github.com/i3/i3/commit/1fcad44f66926e679f4af6e4f4d6... :)

Can you send a PR for https://github.com/i3/i3/blob/30e886b0319ee948863a36a65e5b72... with your correction please?

Re:i3 4.18 by jolmg on Monday February 17, 2020 @04:44PM (#22351110)
I'm not sure what you want the correction to be. Just delete the note in parentheses? Or change the default to "hjkl"?
Re:i3 4.18 by secure on Monday February 17, 2020 @04:54PM (#22351191)
Ideally, replace the note in parentheses with the correct historical reason that you explained in your comment here? :)
Re:i3 4.18 by jolmg on Monday February 17, 2020 @05:27PM (#22351497)
Isn't the note there to explain why i3 differs from vi? Adding the historical reason why vi used hjkl doesn't seem to justify i3 differing. It's almost irrelevant.

Or do you think that not having arrows on "hjkl" is the justification of using "jkl;"?

Personally, I can't see a good reason for "jkl;". The rationale that those are the keys where the fingers rest has been brought up here, but here is my response:

https://news.ycombinator.com/item?id=22349868

The thing is that I believe the designers of ADM-3A made a good choice in putting the arrows on "hjkl" as opposed to "jkl;". It's much more ergonomic.

Re:i3 4.18 by jolmg on Tuesday February 18, 2020 @03:03PM (#22359768)
s/the justification of/a rationale to/ and s/justify/rationalize/.

Couldn't think of the right word at the time.