Emacs keyboard shortcuts cheat sheet
Printable cheat sheet covering all 201 Emacs 2025 keyboard shortcuts and hotkeys, organized by category. Export as PDF or print directly.
All shortcuts
- Alt+X — execute extended command
- Ctrl+Z — suspend Emacs (or iconify it under X)
- Ctrl+X — exit Emacs permanently
- Ctrl+X — read a file into Emacs
- Ctrl+X — save a file back to disk
- Ctrl+X — save all files
- Ctrl+X — insert contents of another file into this buffer
- Ctrl+X — replace this file with the file you really want
- Ctrl+X — write buffer to a specified file
- Ctrl+X — toggle read-only status of buffer
- Ctrl+H — Show help
- F1 — Show help
- Ctrl+H — Enter tutorial
- Ctrl+X — remove help window
- Ctrl+Alt+V — scroll help window
- Ctrl+H — apropos: show commands matching a string
- Ctrl+H — describe the function a key runs
- Ctrl+H — describe a function
- Ctrl+H — get mode-specific information
- Ctrl+G — abort partially typed or executing command
- Ctrl+X — undo an unwanted change
- Ctrl+Slash — undo an unwanted change
- Ctrl+L — redraw garbaged screen
- Ctrl+S — search forward
- Ctrl+R — search backward
- Ctrl+Alt+S — regular expression search
- Ctrl+Alt+R — reverse regular expression search
- Alt+P — select previous search string
- Alt+N — select next later search string
- Enter — exit incremental search
- Delete — undo effect of last character
- Ctrl+G — abort current search
- Ctrl+F — Move over character forward
- Ctrl+B — Move over character backward
- Alt+B — Move over word backward
- Alt+F — Move over word forward
- Ctrl+N — Move over line forward
- Ctrl+P — Move over line backward
- Ctrl+A — Move to line beginning
- Ctrl+E — Move to line end
- Alt+A — Move to sentence beginning
- Alt+E — Move to sentence end
- Ctrl+X — Move to page beginning
- Ctrl+X — Move to page end
- Ctrl+Alt+B — Move to sexp beginning
- Ctrl+Alt+F — Move to sexp end
- Ctrl+Alt+A — Move to function beginning
- Ctrl+Alt+E — Move to function end
- Ctrl+V — scroll to next screen
- Alt+V — scroll to previous screen
- Ctrl+X — scroll left
- Ctrl+X — scroll right
- Ctrl+L — scroll current line to center, top, bottom
- Alt+G — goto line
- Alt+G — goto char
- Alt+M — back to indentation
- Delete — delete character backward
- Ctrl+D — delete character forward
- Alt+Delete — delete word backward
- Alt+D — delete word forward
- Alt+0 — delete line to beginning
- Ctrl+K — delete line to end
- Ctrl+X — delete sentence to bebinning
- Alt+K — delete sentence to end
- Alt+Minus — delete sexp to beginning
- Ctrl+Alt+K — delete sexp to end
- Ctrl+W — kill region
- Alt+W — copy region to kill ring
- Alt+Z — kill through next occurrence of 'c' char
- Ctrl+Y — yank back last thing killed
- Alt+Y — replace last yank with previous kill
- Ctrl+Space — set mark here
- Ctrl+X — exchange point and mark
- Alt+H — mark paragraph
- Ctrl+X — mark page
- Ctrl+Alt+H — mark function
- Ctrl+X — mark entire buffer
- Space — query-replace response: replace this one, go on to next
- Y — query-replace response: replace this one, go on to next
- Comma — query-replace response: replace this one, don’t move
- Delete — query-replace response: skip to next without replacing
- N — query-replace response: skip to next without replacing
- Enter — exit query-replace
- Ctrl+R — enter recursive edit
- Ctrl+Alt+C — exit recursive edit
- Ctrl+X — delete all other windows
- Ctrl+X — delete all other frames
- Ctrl+X — split window, above and below
- Ctrl+X — split frame, above and below
- Ctrl+X — delete this window
- Ctrl+X — delete this frame
- Ctrl+X — split window, side by side
- Ctrl+Alt+V — scroll other window
- Ctrl+X — switch cursor to another window
- Ctrl+X — switch cursor to another frame
- Ctrl+X — select buffer in other window
- Ctrl+X — select buffer in other frame
- Ctrl+X — display buffer in other window
- Ctrl+X — display buffer in other frame
- Ctrl+X — find file in other window
- Ctrl+X — find file in other frame
- Ctrl+X — find file read-only in other window
- Ctrl+X — find file read-only in other frame
- Ctrl+X — run Dired in other window
- Ctrl+X — run Dired in other frame
- Ctrl+X — find tag in other window
- Ctrl+X — find tag in other frame
- Ctrl+X — grow window taller
- Ctrl+X — shrink window narrower
- Ctrl+X — grow window wider
- Tab — indent current line (mode-dependent)
- Ctrl+Alt+Backslash — indent region (mode-dependent)
- Ctrl+Alt+Q — indent sexp (mode-dependent)
- Ctrl+X — indent region rigidly arg columns
- Alt+Semicolon — indent for comment
- Ctrl+O — insert newline after point
- Ctrl+Alt+O — move rest of line vertically down
- Ctrl+X — delete blank lines around point
- Alt+Backslash — delete all white space around point
- Alt+Space — put exactly one space at point
- Alt+Q — fill paragraph
- Ctrl+X — set fill column to arg
- Ctrl+X — set prefix each line starts with
- Alt+O — set face
- Alt+U — uppercase word
- Alt+L — lowercase word
- Alt+C — capitalize word
- Ctrl+X — uppercase region
- Ctrl+X — lowercase region
- Tab — complete as much as possible
- Space — complete up to one word
- Enter — complete and execute
- Alt+P — fetch previous minibuffer input
- Alt+N — fetch later minibuffer input or default
- Alt+R — regexp search backward through history
- Alt+S — regexp search forward through history
- Ctrl+G — abort command
- F10 — activate menu bar items on text terminals
- Ctrl+X — edit and repeat last command that used minibuffer
- Ctrl+X — select another buffer
- Ctrl+X — list all buffers
- Ctrl+X — kill a buffer
- Ctrl+T — transpose characters
- Alt+T — transpose words
- Ctrl+X — transpose lines
- Ctrl+Alt+T — transpose sexps
- Alt+Period — find a tag (a definition)
- Ctrl+U — find next occurrence of tag
- Alt+Comma — continue last tags search or query-replace
- Ctrl+U — filter region through a shell command
- Ctrl+X — copy rectangle to register
- Ctrl+X — kill rectangle
- Ctrl+X — yank rectangle
- Ctrl+X — open rectangle, shifting text right
- Ctrl+X — blank out rectangle
- Ctrl+X — prefix each line with a string
- Ctrl+X — add global abbrev
- Ctrl+X — add mode-local abbrev
- Ctrl+X — add global expansion for this abbrev
- Ctrl+X — add mode-local expansion for this abbrev
- Ctrl+X — explicitly expand abbrev
- Alt+Slash — expand previous word dynamically
- Ctrl+U — numeric argument 1
- Alt+Minus — negative argument
- Ctrl+Q — quoted insert of character c
- Period — grouping
- Period — shy grouping
- Period — explicit numbered grouping
- Ctrl+X — specify principal language
- Ctrl+Backslash — enable or disable input method
- Ctrl+X — set coding system for next command
- Ctrl+H — enter the Info documentation reader
- Ctrl+H — find specified function or variable in Info
- Space — scroll forward
- Delete — scroll reverse
- B — move to beginning of node
- N — next node
- P — previous node
- U — move up
- M — select menu item by name
- N — select nth menu item by number (1–9)
- F — follow cross reference (return with l)
- L — return to last node you saw
- D — return to directory node
- T — go to top node of Info file
- G — go to any node by name
- H — run Info tutorial
- I — look up a subject in the indices
- S — search nodes for regexp
- Q — quit Info
- Ctrl+X — save region in register
- Ctrl+X — insert register contents into buffer
- Ctrl+X — save value of point in register
- Ctrl+X — jump to point saved in register
- Ctrl+X — start defining a keyboard macro
- Ctrl+X — end keyboard macro definition
- Ctrl+X — execute last-defined keyboard macro
- Ctrl+U — append to last keyboard macro
- Ctrl+X — eval sexp before point
- Ctrl+Alt+X — eval current defun
Other Code & Text apps
Related pages