These should all be committed to muscle memory by now, but some continue to elude me:
Emacs keys | Action | Scope | Direction/Place | |
---|---|---|---|---|
Moving around | Ctrl-b | Move the cursor | one character | ⇦ to the left |
Ctrl-f | Move the cursor | one character | ⇨ to the right | |
Alt-b | Move the cursor | one word | ⇦ to the left | |
Alt-f | Move the cursor | one word | ⇨ to the right | |
Ctrl-a | Move the cursor | ⇤ to the start of the line | ||
Ctrl-e | Move the cursor | ⇥ to the end of the line | ||
Ctrl-x-x[1] | Move the cursor |
⇤⇥ to the start, and to the end again |
||
Cut, copy and paste |
Backspace | Delete | the character | ⇦ to the left of the cursor |
DEL Ctrl-d |
Delete | the character | underneath the cursor | |
Ctrl-u | Delete | everything | ⇤ from the cursor back to the line start | |
Ctrl-k | Delete | everything | ⇥ from the cursor to the end of the line | |
Alt-d | Delete | word | ⇨ untill before the next word boundary | |
Ctrl-w | Delete | word | ⇦ untill after the previous word boundary | |
Ctrl-y | Yank/Paste | prev. killed text | at the cursor position | |
Alt-y | Yank/Paste | prev. prev. killed text | at the cursor position | |
History | Ctrl-p | Move in history | one line | ⇧ before this line |
Ctrl-n | Move in history | one line | ⇩ after this line | |
Alt-> | Move in history | all the lines | ⇩ to the line currently being entered | |
Ctrl-r | Incrementally search the line history | ⇧ backwardly | ||
Ctrl-s[2] | Incrementally search the line history | ⇩ forwardly | ||
Ctrl-J | End an incremental search | |||
Ctrl-G | Abort an incremental search and restore the original line | |||
Alt-Ctrl-y | Yank/Paste | arg. 1 of prev. cmnd | at the cursor position | |
Alt-. Alt-_ |
Yank/Paste | last arg of prev. cmnd | at the cursor position | |
Undo |
Ctrl-_ Ctrl-x Ctrl-u |
Undo the last editing command; you can undo all the way back to an empty line | ||
Alt-r | Undo all changes made to this line | |||
Ctrl-l | Clear the screen, reprinting the current line at the top | |||
Ctrl-l | Clear the screen, reprinting the current line at the top | |||
Completion | TAB | Auto-complete a name | ||
Alt-/[3] | Auto-complete a name (without smart completion) | |||
Alt-? | List the possible completions of the preceeding text | |||
Alt-* | Insert all possible completions of the preceeding text | |||
Transpose | Ctrl-t | Transpose/drag | char. before the cursor | ↷ over the character at the cursor |
Alt-t | Transpose/drag | word before the cursor | ↷ over the word at/after the cursor |