Hotkeys and shortcuts for GNU Emacs

(Total 190)

Ctrl + X then Ctrl + F
Files
Read a file into Emacs
Ctrl + X then Ctrl + S
Files
Save a file back to disk
Ctrl + X then S
Files
Save all files
Ctrl + X then I
Files
Insert contents of another file into this buffer
Ctrl + X then Ctrl + V
Files
Replace this file with another file
Ctrl + X then Ctrl + W
Files
Write buffer to specified file
Ctrl + X then Ctrl + Q
Files
Toggle read only status of buffer
Ctrl + Z
Leaving Emacs
Suspend or iconify Emacs
Ctrl + X then Ctrl + C
Leaving Emacs
Exit Emacs completely
Ctrl + X then 1
Multiple windows
Delete all other windows
Ctrl + Meta + V
Multiple windows
Scroll other window
Ctrl + H then A
Help
Show commands matching a string
Ctrl + H then K
Help
Describe the function a key runs
Ctrl + H then F
Help
Describe a function
Ctrl + H then M
Help
Get mode specific information
Ctrl + G
The minibuffer
Abort command
Meta + X
Simple customization
(then customize) Customize variables and faces
Ctrl + X then U
Error recovery
Undo an unwanted change
Ctrl + _
Error recovery
Undo an unwanted change
Ctrl + /
Error recovery
Undo an unwanted change
Ctrl + L
Motion
Scroll current line to center, top, bottom
Ctrl + S
Incremental search
Search forward
Ctrl + R
Query replace
Enter recursive edit
Ctrl + Meta + S
Incremental search
Regular expression search
Ctrl + Meta + R
Incremental search
Reverse regular expression search
Meta + P
The minibuffer
Fetch previous minibuffer input
Meta + N
The minibuffer
Fetch later minibuffer input or default
⤶ Enter
The minibuffer
Complete and execute
Del
Info
Scroll reverse
Ctrl + B
Motion
Character - backward
Ctrl + F
Motion
Character - forward
Meta + B
Motion
Word - backward
Meta + F
Motion
Word - forward
Ctrl + P
Motion
Line - backward
Ctrl + N
Motion
Line - forward
Ctrl + A
Motion
Go to line beginning
Ctrl + E
Motion
Go to line ending
Meta + A
Motion
Sentence - backward
Meta + E
Motion
Sentence - forward
Meta + {
Motion
Paragraph - backward
Meta + }
Motion
Paragraph - forward
Ctrl + X then [
Motion
Page - backward
Ctrl + X then ]
Motion
Page - forward
Ctrl + Meta + B
Motion
sexp - backward
Ctrl + Meta + F
Motion
sexp - forward
Ctrl + Meta + A
Motion
function - backward
Ctrl + Meta + E
Motion
function - forward
Meta + <
Motion
Go to beginning of buffer
Meta + >
Motion
Go to end of buffer
Ctrl + V
Motion
Scroll to next screen
Meta + V
Motion
Scroll to previous screen
Ctrl + X then <
Motion
Scroll left
Ctrl + X then >
Motion
Scroll right
Meta + G then G
Motion
Go to line
Meta + G then C
Motion
Go to character
Meta + M
Motion
Back to indentation
Ctrl + D
Killing and deleting
Character (delete, not kill) - forward
Meta + Del
Killing and deleting
Word - backward
Meta + D
Killing and deleting
Word - forward
Meta + 0 then Ctrl + K
Killing and deleting
Line (to end of) - backward
Ctrl + K
Killing and deleting
Line (to end of) - forward
Ctrl + X then Del
Killing and deleting
Sentence - backward
Meta + K
Killing and deleting
Sentence - forward
Meta + - then Ctrl + Meta + K
Killing and deleting
sexp - backward
Ctrl + Meta + K
Killing and deleting
sexp - forward
Ctrl + W
Killing and deleting
Kill region
Meta + W
Killing and deleting
Copy region to kill ring
Meta + Z
Killing and deleting
then press char to kill through next occurence of char
Ctrl + Y
Killing and deleting
Yank back last thing killed
Meta + Y
Killing and deleting
Replace last yank with previous kill
Ctrl + @
Marking
Set mark here
Ctrl + Space
Marking
Set mark here
Ctrl + X then Ctrl + X
Marking
Exchange point and mark
Meta + @
Marking
Set mark arg words away
Meta + H
Marking
Mark paragraph
Ctrl + X then Ctrl + P
Marking
Mark page
Ctrl + Meta + @
Marking
Mark sexp
Ctrl + Meta + H
Marking
Mark function
Ctrl + X then H
Marking
Mark entire buffer
Meta + % then Meta + X
Query replace
(then query-replace-regexp) Interactively replace a text string using regular expressions
Space
Info
Scroll forward
Y
Query replace
Replace this one, go to next
N
Info
Go to next node
!
Query replace
Replace all remaining matches
^
Query replace
Back up to the previous match
Ctrl + Meta + C
Query replace
Exit recursive edit
Ctrl + X then 5 then 1
Multiple windows
Delete all other windows (for frame)
Ctrl + X then 2
Multiple windows
Split window, above and below
Ctrl + + X then 5 then 2
Multiple windows
Split window, above and below (for frame)
Ctrl + X then 0
Multiple windows
Delete this window
Ctrl + X then 5 then 0
Multiple windows
Delete this window (for frame)
Ctrl + X then 3
Multiple windows
Split window, side by side
Ctrl + X then O
Multiple windows
Switch cursor to another window
Ctrl + X then 5 then O
Multiple windows
Switch cursor to another window (for frame)
Ctrl + X then 4 then B
Multiple windows
Select buffer in other window
Ctrl + X then 5 then B
Multiple windows
Select buffer in other window (for frame)
Ctrl + X then 4 then Ctrl + O
Multiple windows
Display buffer in other window
Ctrl + X then 5 then Ctrl + O
Multiple windows
Display buffer in other window (for frame)
Ctrl + X then 4 then F
Multiple windows
Find file in other window
Ctrl + X then 5 then F
Multiple windows
Find file in other window (for frame)
Ctrl + X then 4 then R
Multiple windows
Find file read-only in other window
Ctrl + X then 5 then R
Multiple windows
Find file read-only in other window (for frame)
Ctrl + X then 4 then D
Multiple windows
Run Dired in other window
Ctrl + X then 5 then D
Multiple windows
Run Dired in other window (for frame)
Ctrl + X then 4 then .
Multiple windows
Find tag in other window
Ctrl + X then 5 then .
Multiple windows
Find tag in other window (for frame)
Ctrl + X then ^
Multiple windows
Grow window taller
Ctrl + X then {
Multiple windows
Shrink window smaller
Ctrl + X then }
Multiple windows
Grow window wider
⭾ Tab
The minibuffer
Complete as much as possible
Ctrl + Meta + \
Formatting
Indent region (mode-dependent)
Ctrl + Meta + Q
Formatting
Indent sexp (mode-dependent)
Ctrl + X then ⭾ Tab
Formatting
Indent region rigidly arg columns
Meta + ;
Formatting
Indent for comment
Ctrl + O
Formatting
Insert newline after point
Ctrl + Meta + O
Formatting
Move rest of line vertically down
Ctrl + X then Ctrl + O
Formatting
Delete blank lines around point
Meta + ^
Formatting
Join line with previous (with arg, next)
Meta + \
Formatting
Delete all white space around point
Meta + Space
Formatting
Put exactly one space at point
Meta + Q
Formatting
Fill paragraph
Ctrl + X then F
Formatting
Set fill column to arg
Ctrl + X then .
Formatting
Prefix each line starts with
Meta + O
Formatting
Set face
Meta + U
Case change
Uppercase word
Meta + L
Case change
Lowercase word
Meta + C
Case change
Capitalize word
Ctrl + X then Ctrl + U
Case change
Uppercase region
Ctrl + X then Ctrl + L
Case change
Lowercase region
?
The minibuffer
Show possible completions
Meta + R
The minibuffer
Regexp search backward through history
Meta + S
The minibuffer
Regexp search forward through history
Ctrl + X then Esc then Esc
The minibuffer
Edit and repeat the last command that used the minibuffer
F10
The minibuffer
Activate menu bar items in text terminals
Ctrl + X then B
Buffers
Select another buffer
Ctrl + X then Ctrl + B
Buffers
List all buffers
Ctrl + X then K
Buffers
Kill a buffer
Ctrl + T
Transposing
Transpose characters
Meta + T
Transposing
Transpose words
Ctrl + X then Ctrl + T
Transposing
Transpose lines
Ctrl + Meta + T
Transposing
Transpose sexps
Meta + $
Spelling check
Check spelling of current word
Meta + .
Tags
Find a tag (a definition)
Ctrl + U then Meta + .
Tags
Find next occurence of a tag
Meta + ,
Tags
Continue last tags search on query-replace
Meta + !
Shells
Execute a shell command
Meta + &
Shells
Execute a shell command asynchronously
Meta + |
Shells
Run a shell command on the region
Ctrl + X then R then R
Rectangles
Copy rectangle to register
Ctrl + X then R then K
Rectangles
Kill rectangle
Ctrl + X then R then Y
Rectangles
Yank rectangle
Ctrl + X then R then O
Rectangles
Open rectangle, shifting text right
Ctrl + X then R then C
Rectangles
Black out rectangle
Ctrl + X then R then T
Rectangles
Prefix each line with string
Ctrl + X then A then G
Abbrevs
Add global abbrev
Ctrl + X then A then L
Abbrevs
Add mode-local abbrev
Ctrl + X then A then I then G
Abbrevs
Add global expansion for this abbrev
Ctrl + X then A then I then L
Abbrevs
Add mode-local expansion for this abbrev
Ctrl + X then A then E
Abbrevs
Explicitly expand abbrev
Meta + /
Abbrevs
Expand previous word dynamically
Ctrl + U then Num 0 - Num 9
Miscellaneous
Numeric argument
Meta + -
Miscellaneous
Negative argument
Ctrl + Q
Miscellaneous
then char: Quoted insert
Ctrl + \
International character sets
Enable or disable input method
Ctrl + H then I
Info
Enter the Info documentation reader
Ctrl + H then S
Info
Find specified function or variable in Info
B
Info
Beginning of node
P
Info
Go to previous node
U
Info
Move up
M
Info
Select menu item by name
Num 1 - Num 9
Info
Select menu item by number
F
Info
Follow cross reference (return with 1)
L
Info
Return to last node you saw
D
Info
Return to directory node
T
Info
Go to top node of Info file
G
Info
Go to any node by name
H
Info
Run info tutorial
I
Info
Look up a subject in the indices
S
Info
Search nodes for regexp
Q
Info
Quit Info
Ctrl + X then R then S
Registers
Save region in register
Ctrl + X then R then I
Registers
Insert register contents into buffer
Ctrl + X then R then Space
Registers
Save value of point in register
Ctrl + X then R then J
Registers
Jump to point saved in register
Ctrl + X then (
Keyboard macros
Start defining a keyboard macro
Ctrl + X then )
Keyboard macros
End keyboard macro definition
Ctrl + X then E
Keyboard macros
Eappend to last keyboard macro
Ctrl + X then Ctrl + E
Dealing with Emacs Lisp
Eval sexp before point
Ctrl + Meta + X
Dealing with Emacs Lisp
Eval current defun
Meta + :
Dealing with Emacs Lisp
Read and eval minibuffer