Emacs Cheat Sheet

(original version by David Cohen)
(revised by Bob Rogers)

Home : Emacs tips : Cheat sheet

UNDO: C-_ ("control underscore")
Find (or Create) file: C-x C-f
Save file: C-x C-s
Exit Emacs: C-x C-c
Quit (i.e. interrupt) command: C-g

Move Delete
Amount forward backward forward backward
Characters C-f C-b C-d DEL
Words M-f M-b M-d M-DEL
Lines C-n C-p C-k (to EOL) C-SPC C-a C-w
Sentences M-a M-e M-k C-x DEL
Expressions C-M-f C-M-b C-M-k C-M-DEL
Paragraphs M-} M-{ (no standard bindings for delete cmds)
End/start of line C-e C-a (repeat count goes to following lines)
End/start of buffer M-> M-< (no repeat count)
Cutting and Pasting
C-SPC Mark one end of region
C-w Cut (after you Mark and move to other end)
M-w Copy (after you Mark and move to other end)
C-y Yank (paste) most recently killed (cut or copied); will also use text currently selected in another application.
M-y Next most recently killed (do C-y first, repeat M-y to cycle thru all)
To make cut/copy/paste behave as it does in Macintosh and Windows apps, do M-x pc-selection-mode, or put
in your .emacs file to enable this in every session.
Scrolling and Windows
C-v Scroll down (toward end of buffer)
M-v Scroll up (toward beginning of buffer)
C-M-v Scroll other window down
C-x 1 One window on current buffer
C-x 2 Split window vertically
C-x 3 Split window horizontally
C-x ^ Grow window vertically; prefix is number of lines
Command-related Stuff
ESC ESC ESC Get me out of where I am now
C-u # Prefix numeric arg # (digits with optional "-" sign) to next cmd
C-g Stop a command in progress, or quit out of a partially entered command
Getting help
C-h k Show command documentation; prompts for keystrokes
C-h a "Command apropos"; prompts for regexp and shows all matching commands
C-h c Show command name on message line; prompts for keystrokes
C-h f Describe function; prompts for command or function name, shows documentation in other window
C-h i Info browser; gives access to online documentation for emacs and more
C-_ or C-x u Undo/redo (a series of these keeps undoing; after doing something else, C-_ or C-x u will undo the undo's)
C-q Quoted insert; inserts the next character typed, even if it is a control or meta character
M-x shell-strip-ctrl-m RET Flush ^M at end of line
C-z Suspend/iconify emacs (type "%emacs" in invoking shell to get it back)
C-x C-c Exit emacs (asks about unsaved buffers and running programs)
Files and Buffers
C-x C-f Find file (or create if not there); prompts for file name
C-x C-s Save file
C-x C-w Write file; prompts for new name
C-x s Save modified buffers; asks about each
C-x b Select buffer; prompts for buffer name
C-x C-b List buffers; shows in other window
C-s Incremental search forward; searches as you type
C-r Incremental search backward
M-x replace-string RET String replace from here to end of buffer; prompts for string and replacement
M-x query-replace RET String replace from here to end of buffer, querying for each occurrence

Other resources for learning emacs

[This is from the Emacs tips page.]

Bob Rogers <rogers@rgrjr.dyndns.org>
$Id: emacs_cheat.html 291 2012-03-27 01:18:04Z rogers $