HJKL motion keys

Last edited
Learn to use the hjkl motion keys for efficient mouseless living

hjkl cursor movement keys origine

The famous hjkl cursor movement keys started their quest for world domination at the birth of the vi editor

The vi editor was created by Bill Joy in 1976. According to picture op ADM-3A keyboard. Bill Joy used a 300 baud modem when he developped vi. This is one of the reasons why vi is an extremely efficient text editor.

Although vi is more then 30 years old, it is still the most preferred editor by a lot of people. There are many derivates and clones of vi. The most known are vim, elvis and nvi.

Some interesting links about vi

hjkl is great to use

It takes some time to get used to hjkl as cursor movement keys. But once this is mastered it is a very efficient method. At least, on a QWERTY-keyboard. On a QWERTY-keyboard the hjkl keys are all on the middle row precisely under the four righthand fingers. They are on starting position for touch typists.

hjkl keybindings in the wild

Besides vi and the vi clones there are other applications that use hjkl keybindings.

  • Bash can be set in vi-mode with set -o vi
  • GNU Screen (when in copy mode the cursor can be moved according to the
  • mutt, a text mode mail client understands hjkl movement commands
  • hjkl method, including b, e, $ etc.)
  • ratmenu, a great menu developped for the ratpoison window manager
  • vimprobable, a fast webbrowser based on webkit
  • vimperator, a great enhancement of the Firefox webbrowser which turns Firefox in an efficient keyboard driven webbrowser
  • w3m, a text mode webbrowser that support hjkl right out of the box
  • snownews, a text mode rss-reader, has a flexible keybindings system. It is not difficult to make it understand hjkl :)

The following applications are said to use hjkl keybindings. However I have not used them in real life.

  • Vide is a simple filemanager with vi keybindings
  • Wyrd is a text-based front-end to remind, a sophisticated calendar and alarm program.