Ergonomic key layout for cursor movement in Atom
Some years ago I started using Emacs and Cabbage which introduced an alternative key layout to move the cursor. I really started to like the new layout because it limits the unnecessary movements of your hands from the center of the keyboard to the cursor keys and backwards.
When I switched to Atom I couldn't stand being without the ergonomic cursor movement. This project is Cabbages ergonomic cursor movement implementation ported to Atom.
Beware: This package currently only works on OS X.
Usage
The ergonomic layout uses the keys i, k, j and l to move the cursor. Obviously these keys cannot be overridden directly but in combination with meta keys this turns out to be a powerful feature.
Simple cursor movement
cmd-i
: move the cursor one line upcmd-k
: move the cursor one line downcmd-j
: move the cursor one character to the leftcmd-l
: move the cursor one character to the right
Fast cursor movement
shift-cmd-i
: move one page upshift-cmd-k
: move one page downshift-cmd-j
: move to the beginning of the lineshift-cmd-l
: move to the end of the line
Special cursor movement
cmd-u
: move one word to the leftcmd-o
: move one word to the rightshift-cmd-u
: move one paragraph upshift-cmd-o
: move one paragraph down
Text selection
But how do you select one character to the right? cmd-l
(move the cursor one character to the right) while holding shift
is bound another action.
If you are familiar with Emacs you already know the solution. You start by placing a mark at the current cursor position. Then you move the cursor around. Everything between the mark and the current cursor position is selected. Then use the selection as you used it before installing this package.
cmd-space
: place the selection mark / remove the mark when placed two times at the same position
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request