In the default keymap of Sublime, most cursor movement and basic text selection is done by arrow keys. The first problem of arrow key is they are not in keyboard major part, I never like arrow keys when using an editor, if the editor don't allow key binding, I will stop using it. The second problem is there are keyboards without array keys, for example some 66 keys mini keyboards. I need be able to do basic editing operations completely without leaving my hands from the type area of keyboard.

Here is my favorite set of keybindings for basic editing shortcut keys:

 
[
    { "keys": ["ctrl+;"], "command": "move_to", "args": {"to": "eol", "extend": false} },
    { "keys": ["ctrl+i"], "command": "move", "args": {"by": "lines", "forward": false} },
    { "keys": ["ctrl+k"], "command": "move", "args": {"by": "lines", "forward": true} },
    { "keys": ["ctrl+j"], "command": "move", "args": {"by": "characters", "forward": false} },
    { "keys": ["ctrl+l"], "command": "move", "args": {"by": "characters", "forward": true} },
    { "keys": ["ctrl+h"], "command": "move_to", "args": {"to": "bol", "extend": false} },
    { "keys": ["ctrl+;"], "command": "move_to", "args": {"to": "eol", "extend": false} },
    { "keys": ["ctrl+shift+h"], "command": "move_to", "args": {"to": "bol", "extend": true} },
    { "keys": ["ctrl+shift+;"], "command": "move_to", "args": {"to": "eol", "extend": true} },
    { "keys": ["ctrl+g"], "command": "move_to", "args": {"to": "bof", "extend": false} },
    { "keys": ["ctrl+'"], "command": "move_to", "args": {"to": "eof", "extend": false} },
    { "keys": ["ctrl+shift+j"], "command": "move", "args": {"by": "characters", "forward": false, "extend": true} },
    { "keys": ["ctrl+shift+l"], "command": "move", "args": {"by": "characters", "forward": true, "extend": true} },
    { "keys": ["ctrl+shift+i"], "command": "move", "args": {"by": "lines", "forward": false, "extend": true} },
    { "keys": ["ctrl+shift+k"], "command": "move", "args": {"by": "lines", "forward": true, "extend": true} },    
    { "keys": ["ctrl+/"], "command": "move", "args": {"by": "words", "forward": false} },
    { "keys": ["ctrl+e"], "command": "move", "args": {"by": "word_ends", "forward": true} },
    { "keys": ["ctrl+shift+/"], "command": "move", "args": {"by": "words", "forward": false, "extend": true} },
    { "keys": ["ctrl+shift+e"], "command": "move", "args": {"by": "word_ends", "forward": true, "extend": true} },    
    { "keys": ["ctrl+m"], "command": "left_delete" },
    { "keys": ["alt+i"], "command": "scroll_lines", "args": {"amount": 1.0 } },
    { "keys": ["alt+k"], "command": "scroll_lines", "args": {"amount": -1.0 } },
]
 

The basic idea is the keys in the home row under the right hand represent the basic arrows. The g h j i k l ; ' represent go to file begin, line begin, left one character, previous line, next line, line end and file end. When combined with ctrl, they means move the cursor, when combined with ctrl + shift, select text when moving cursor.