Vim serving as a model for keyboard-based software

vim is a good example (if not the best) of a keyboard based application. Vim being alive and still maintained during more than 20 years (40 if you count its predecessor ex with its visual mode vi), it shows that such an application is robust and doesn’t get caught up by the new sleeky editors.

Vim’s powerfulness is due to its inner coherence. The letter `d` always has the signification: delete. The letter `w` means a word, so `dw` means delete the next work. `$` means the end of the line, so `d$` means delete to the end of the line. An abbreviation for `x$` where x could be any character is `X`. So `D` will delete all characters to the end of the line. In the same way `C` (change) will delete all characters to the end of the line and put you in insert mode (The mode that lets you use Vim like any other editor).

I’m trying to do the same with my own software. `j` and `k` are used to go up and down a list. What is very great about keyboard shortcuts is the following:

* They never take space on screen, delivering you the best experience
* They will go into your muscle memory, and you won’t need to look at the keyboard to go the next item in the list (just press the key with the little mark on it 🙂 )
* They make it possible to add functionality without loosing clarity: you don’t need to learn the keyboard shortcuts, but if you want to go one level up, you can.

2 réflexions au sujet de « Vim serving as a model for keyboard-based software »

  1. The problem about vim starting when you are using different keyboard layout from qwerty, for example I use ‘dvorak’ layout, and I have to remap all buttons in vim so it works the same way, but now letters dont make any sense, to Insert I have to press ‘C’ button and for Visual mode ‘K’. You also have some French in this form, it would be nice if you translate it to English.

  2. Well, I have the same kind of « problem ».
    I switched to bépo keyboard (a french type of dvorak) and started to use vim more regularly. I was having the idea of remapping everything. But a friend of mine told me not to (he was a long time dvorak user). He said that the place of the keys wouldn’t make sense as the value.
    And even if we have muscle memory, it’s true that what triggers the muscle is still the thought of the letter/value.
    So I kept my layout and kept all the vim mappings, and even if going up with K means typing a key on the lowest line of my keyboard, I’m now used to it and I love it.

Laisser une réponse

Votre adresse de messagerie ne sera pas publiée.