Reference Sheet by Aaron Hawley

This is a reference card that is unlike other ReferenceCards in that it will not fit on a conveneniently sized card. Instead it tries to tell you everything about doing things in Emacs.

open
emacs& RETor click a graphical icon
emacs -nw RETstart in terminal, not in a windowing system
C-h C-ainformation about Emacs
M-x emacs-versionshow version in echo area
M-x emacs-uptimeshow time since started
exit
C-x C-csave buffers and quit
C-u C-x C-cforce save buffers and quit
C-]recursive edit (see “recursive edit” below)
M-x kill-emacsforce quit
cancel
C-ga command
C-M-crecursive edit (see “recursive edit” below)
C-[ C-csame as previous
recursive edit
C-]exit recursive edit
C-M-ccancel recursive edit
C-[ C-csame as previous
M-x top-levelcancel all
customize
C-x C-f ~/.emacs RETEmacs initialization file
M-x emacs-init-timerun time of loading user init file
M-x customizemain menu
M-x customize-variablevariable
M-x customize-apropossearch
M-x customize-modemode
M-x global-set-keydefine key binding (see “key” below)
M-x local-set-keydefine key binding for current buffer
M-x normal-modereread settings in file local variables
M-x display-timeshow clock, system load and email flag in mode line
M-x display-time-modeturn off
M-x display-time-worldshow times around the world
M-x display-battery-modeshow system power
M-x size-indication-modeshow size in mode line
M-x column-number-modeshow column number in mode line
M-x toggle-indicate-empty-linesshow end of file in fringe
M-x ruler-modeadd a ruler to the current buffer’s window
M-x menu-bar-modetoggle existence of drop-down menu
M-x tool-bar-modetoggle existence of clickable tool bar
M-x scroll-bar-modetoggle scroll bar
M-x toggle-scroll-bartoggle scroll bar in current frame
M-x blink-cursor-modetoggle blinking of cursor
M-x normal-erase-is-backspace-modefix delete and backspace keys
menu
M-`text interaction with drop-down menu
F10same as previous
M-x menu-bar-modetoggle existence of drop-down menu
M-x tool-bar-modetoggle existence of clickable tool bar
help
C-h ?menu
C-h C-hmenu
SPCscroll down menu
DELscroll up menu
qclose menu
C-h ttutorial
C-h rEmacs info manual (see “info” below)
C-h FEmacs FAQ
C-h c <KEY>what is command for KEY
C-h k <KEY>describe command for KEY
C-h w <COMMAND> RETwhere is key binding for COMMAND
C-h mshow current modes
C-h bshow current key bindings
C-x C-hlist bindings starting with C-x (see “key” below)
C-c C-hlist bindings starting with C-c (see “key” below)
C-h alist commands matching search
C-u C-h alist commands and functions matching search
C-h f <FUNCTION> RETdescribe FUNCTION
M-x M-p C-h f RETdescribe last command executed with M-x
C-h v <VARIABLE> RETdescribe and show values for VARIABLE
M-x apropos-variablelist user variable matching search
C-u M-x apropos-variablelist all variables matching search
M-x apropos-valuelist user variables with values matching search
C-u M-x apropos-valuelist all variables with values matching search
C-u M-x apropos-documentationlist all with values matching search
TABforward to cross-reference link
S-TABbackward cross-reference link
M-TABsame as previous
C-M-isame as previous
C-[ C-isame as previous
RETfollow cross-reference
C-c C-cfollow cross-reference
C-c C-bgo back
qquit
info help
C-h iopen directory of manuals
C-h ropen Emacs manual
C-h Sfind description of symbol in manual
qclose
ttable of contents (menu)
dback to directory
m <ENTRY>visit menu ENTRY in table of contents
TABforward to cross-reference link
S-TABbackward cross-reference link
M-TABsame as previous
C-M-isame as previous
C-[ C-isame as previous
RETfollow link
lback to last visited page
rforward to last visited page
C-vscroll down
SPCscroll down
M-vscroll up
DELscroll up
bscroll up
nnext node
pprevious node
isearch current manual’s index
i RETgo to index node
M-x info-apropossearch all indices
s <PATTERN>search forward for regular expression PATTERN
S <PATTERN>case-insensitive search for regular expression PATTERN
C-s <SEARCH>forward to SEARCH (see “search” below)
C-r <SEARCH>reverse to SEARCH
M-nmake a duplicate buffer in other window (see “window” below)
M-x clone-buffersame as previous
ckill current node name as copy
wsame as previous
M-0 ckill current node name as Lisp expression
M-0 wsame as previous
minibuffer
M-pprevious input
M-nrecent input
TABcomplete name of buffer, file, symbol (see “completion” below)
C-isame as previous
M-r <REGEXP> RETsearch previous input backward with REGEXP
M-s <REGEXP> RETsearch for previous input forward with REGEXP
M-r RETsearch previous input backward again
M-s RETsearch for previous input again
C-h eshow recently echoed messages
C-gexit
completion
TABcomplete name of buffer, file, function, variable, …
SPCcompletion, unless a file
C-q SPCinsert space without completion
?list completions
M-vgo to “completions” buffer
<right>next completion
<left>previous completion
RETselect completion
ESC ESC ESCexit back to minibuffer
C-[ C-[ C-[same as previous
mode
C-h mhelp with current (see “help” above)
M-x text-modefor writing
M-x fundamental-modea simple default
M-x normal-modechange back to what Emacs thought it was
M-x customize-modecustomize current (see “customize” above)
M-x add-file-local-variable-prop-line RET mode RETadd to top of file
file
C-x C-fopen
C-x C-fnew
C-x C-f .. <file> RETopen in parent directory
C-x C-f / <file> RETopen from root directory
C-x C-f *.c RETopen all C sources in current directory
M-x make-directory RET RETincluding parent directories
C-x C-vclose current and open another
C-x C-ssave
C-x C-w RETsave even if buffer is unchanged
C-u M-~ C-x C-ssame as previous (see M-~ below)
C-x sprompt to save any buffer that has been modified
C-u C-x ssave any buffer that has been modified with no questions
C-x C-f M-p RETopen previously saved or opened
C-x C-w <PATH> RETsave current to PATH
C-x C-w <DIRECTORY> RETsave to DIRECTORY using file or buffer name
M-~mark buffer as unmodified
C-u M-~mark buffer as modified
C-x C-qtoggle as read only
C-x C-f archive.tar RETlist contents of archive
C-x C-f file.gz RETopen compressed Gzip
C-x C-f file.zip RETlist contents of ZIP
M-x rename-file RET <FILE> RET <NEW>rename current
M-x rename-file RET RET <NAME> RETrename current to NAME
M-x rename-file RET RET <NAME> RETrename current to NAME
M-x delete-file RET <NAME> RETdelete NAME
M-x view-file(see “read only” below)
M-x find-file-literallyopen in basic mode with no conversions
<insert>toggle between overwrite mode and insert mode
M-x overwrite-modesame as previous
M-x binary-overwrite-modeedit as literal bytes
C-x d M-p RET Rrename previously saved or opened
C-x iinsert other into current buffer
M-x write-regionsave region (see “region” below)
C-x h M-x write-regionsave buffer once to alternate
M-x append-to-filesave region to other (see “region” below)
M-x set-visited-file-nameset buffer to alternate
M-x set-file-modesset permissions of current
M-x find-file-at-pointopen name at point
M-x revert-bufferrestore buffer from disk
C-x C-v RETsame as previous
C-x C-f M-n RETsame as previous
C-x C-f M-n ~ RETopen backup
C-u C-x C-ssave and make it the next backup
C-0 C-x C-ssave without making a backup
C-u C-u C-x C-sbackup previous then save
C-u C-u C-u C-x C-sbackup previous, save, make it the next backup
M-x recover-filerecover auto-save data after a crash
M-x recover-sessionrecover using auto-save data
M-x size-indication-modeshow size in mode line
M-x auto-revert-modeupdate with changes on disk
M-x global-auto-revert-modeupdate with changes for any buffer
M-x auto-revert-tail-modeupdate end of buffer with changes on disk
M-x highlight-changes-modeuse color overlays for tracking edits
M-x add-name-to-filemake link
M-x make-symbolic-linkmake symbolic link
M-x unix-syncflush changes in file system to disk
buffer
M-<beginning
M->end
M-5 M-<go to half way
M-1 M-<go to 10 percent
M-9 M-<go to 90 percent
C-u C-SPCgo back (see “mark” below)
C-x hmark
M-> M-<same as previous
C-x k <BUFFER> RETkill BUFFER
C-x k RETkill current
M-x kill-some-buffersask to kill each and all
M-x clean-buffer-listautomatically kill old buffers
M-x customize-group RET midnight RETschedule daily cleanup
C-x b RETswitch to last buffer
C-x b <BUFFER> RETswitch to BUFFER or make new BUFFER
C-x 4 bswitch to a buffer in other window (see “window” below)
C-x 4 C-oshow a buffer in other window (see “window” below)
C-x 4 0kill current and close window (see “window” below)
C-u M-x quit-windowsame as previous
C-x C-blist all (see “buffer menu” below) in other window
M-x buffer-menulist in current window
M-x buffer-menu-other-windowlist in other window and select it
M-x bury-bufferavoid switching to current buffer and switch to last
M-x unbury-bufferundo last bury
C-x b M-p M-p RETswitch to previously switched buffer
C-x C-<right>bury buffer and switch to next buffer
C-x C-<left>switch to previously buried buffer
C-x C-ssave current contents to file on disk
M-x rename-buffer RET <NAME>rename current to NAME
M-x rename-uniquelyremove “<X>” suffix from buffer name if possible
M-x revert-bufferrestore contents with file on disk (see “undo” below)
C-x C-v RETsame as previous
M-x insert-buffercopy all of another to point in current
M-x append-to-buffercopy region to other (see “region” below)
M-x copy-to-bufferoverwrite BUFFER with region (see “region” below)
M-x enable-command RET erase-buffer RETpermanently enable
M-x erase-bufferdelete everything (see “delete” below)
M-x clone-indirect-bufferopen an indirect buffer based on current
C-x 4 copen an indirect buffer but in another window
C-h f car RET C-x o M-x clone-buffer RET C-h f cdr RETcompare two functions
M-x highlight-compare-buffersshow differences with color
read only
C-x C-r <FILE> RETopen FILE as read only
C-x C-qtoggle write status
M-x view-modeview mode for current buffer
M-x view-buffer RET RETview mode for other buffer
M-x view-file <FILE> RETopen FILE in view mode
M-x view-buffer RET <BUFFER> RETview mode for BUFFER
SPCscroll down
DELscroll up
hview mode help
qturn off view mode
M-x normal-modeturn off view mode
window
C-vscroll down
M-vscroll up
C-1 C-vscroll down one line
M-1 M-vscroll up one line
C-M-vscroll other window down
C-[ C-vsame as previous
M-<beginning of buffer
M->end of buffer
M-x beginning-of-buffer-other-windowbeginning of other buffer
M-x end-of-buffer-other-windowend of other buffer
M-rmove to first column of center line in display
M-0 M-rmove to first column of first displayed line
M-- M-rmove to first column of last displayed line
M-4 M-rmove to first column of fourth displayed line
C-u - 3 M-rmove to first column of third to last displayed line
C-x 2split vertically in two
C-x oswitch between windows
C-x 4 bswitch to a buffer in other window
C-x 4 C-oshow a buffer in other window
C-x 0close current
C-x 1close all others leaving current
ESC ESC ESCsame as previous
C-x 4 C-fopen file in other
C-x 4 fopen file in other
C-x -shrink to fit text
C-x +equalize window heights
C-x 4 C-hlist all commands starting with C-x 4
C-x ^enlarge window by 1 line
C-u 5 C-x ^enlarge window 5 lines
M-- 5 C-x ^shrink window 5 lines
C-x 3split horizontally
C-u 5 C-x }enlarge window 5 columns wider
C-5 C-x {shrink window 5 columns narrower
C-x <scroll horizontally right
C-x >scroll horizontally left
M-x toggle-truncate-lineschange if long lines fold or are truncated
M-x compare-windowscompare buffers starting at point of both
C-x zcontinue comparing
zcontinue comparing more (see “diff” below)
M-x highlight-compare-buffersuse color to show all differences
buffer menu
C-x C-blist
M-x buffer-menulist in current window
M-x buffer-menu-other-windowlist in other window and select it
C-u C-x C-blist only buffers associated with files
SPCmove down
nmove down
C-nmove down
pmove up
C-pmove up
%toggle current as read only (see “read only” above)
?show modes for current
gupdate list
M-x auto-revert-modeautomatically update list every 5 seconds
Ttoggle list to buffers associated with files
C-oview current in other window (see “window” above)
RETview current in this window
ego to current in this window
fgo to current in this window
1go to current in only 1 window
2go to current in only 1 window
Vopen current buffer in View mode (see “read only” above)
bbury current (see “buffer” above)
mmark current and move down
C-dmark to delete current and move up
dmark to delete current and move down
kmark to delete current and move down
C-kmark to delete current and move down
xexecute marks
M-2 M-x Buffer-menu-sortsort by name
M-3 M-x Buffer-menu-sortsort by size (ascending)
M-4 M-x Buffer-menu-sortsort by mode
M-5 M-x Buffer-menu-sortsort by file name
M-x Buffer-menu-sortsort by display time
qquit
redisplay
C-lwith line at center of window
C-0 C-lwith current line at top of window
C-- C-lwith current line at bottom of window
M-- C-lsame as previous
C-u -1 C-lsame as previous
C-M-ltry to make the top of the current function visible in the window
C-[ C-lsame as previous
C-M-l C-M-lwith current line at top of window
command
M-xexecute
ESC xM-x
C-[ xM-x
M-x execute-extended-commandM-x
M-x M-ppreviously executed
M-nnext
M-x TABcomplete name of command (see “completion” above)
M-x ?list completions in other window
M-x forward TABlist completions starting with “forward”
M-x *line TAB list completions containing “line”
M-x M-r <REGEXP>search backward
M-x M-s <REGEXP>search for previously executed
C-h lshow recently typed keys
C-h eshow recently echoed messages
C-x zrepeat last
C-x M-ESCedit and re-evaluate last as Emacs Lisp
C-x ESC ESCsame as previous
C-x C-[ C-[same as previous
C-x M-:same as previous
M-x disable-commandask before running
M-x enable-commandrun without asking
M-x command-historyshow recently run commands
xexecute command at line in history
iterative command
C-urepeat next command 4 times
M--next command once in opposite direction
C--next command once in opposite direction
C-u 8repeat next command 8 times
M-8repeat next command 8 times
C-8repeat next command 8 times
C-u 8 C-urepeat next command 8 times
C-8repeat next command 8 times
C-u 13repeat next command 13 times
M-1 M-3repeat next command 13 times
M-1 3repeat next command 13 times
C-1 C-3repeat next command 13 times
C-1 3repeat next command 13 times
C-u 13 C-u 1insert 13 ones
M-- 3repeat next command 3 times in opposite direction
C-- 3repeat next command 3 times in opposite direction
C-u -3repeat next command 3 times in opposite direction
C-u C-urepeat next command 16 times
C-u C-u C-urepeat next command 64 times
C-u 369 C-u 0insert 369 zeros
M-3 M-6 M-9 C-u 0insert 369 zeros
M-3 6 9 C-u 0insert 369 zeros
non-iterative command
C-utoggle behavior of next command
M--toggle behavior of next command with negative value
macro
C-x (start recording
F3 same as previous
C-x )finish recording
F4 same as previous
C-x efinish recording and run what was just recorded
C-x erun last again
C-x e erun last twice
M-3 C-x erun last 3 times
C-0 C-x erun last infinite times until error
M-0 C-x esame as previous
C-x C-k rgo to each line in region and run last iteratively
C-x C-k C-iinsert counter and increment
C-x C-k C-cset counter
F3 F3 RET F4 F4 F4 F4insert numbers 0 through 3 one-per-line
C-x ( C-x C-k C-i RET C-x e e esame as previous
F3 C-u 2 F3 RET F4 F4 F4 F4insert evens 0 through 6 one-per-line
C-x ( C-2 C-x C-k C-i RET C-x e e esame as previous
C-x ( C-2 C-x C-k C-i RET C-x e e esame as previous
C-x C-k C-c 1 RET F3 F3 RET F4 F4 F4 F4insert numbers 1 through 3
C-x C-k C-c 1 RET C-x ( C-x C-k C-i RET C-x e e esame as previous
C-a C-SPC C-3 C-n C-x r Nsame as previous (see “rectangle” below)
C-S-DEL F3 C-y C-9 F4duplicate line 9 times
C-S-DEL C-x ( C-y C-9 C-x eduplicate line 10 times
C-u C-x erun last and append more commands
C-u F3same as previous
C-x C-k C-ddelete current macro from ring
C-x C-k C-pswitch to previous macro in ring
C-x C-k C-nswitch to next macro in ring
C-x C-k e C-x eedit current
C-x C-k C-esame as previous
C-x C-k n <NAME>give current NAME
M-x <NAME>run NAME
C-x C-k b 1bind current to C-x C-k 1
C-x C-k b Abind current to C-x C-k A
C-x C-k b C-c 1bind current to C-c 1
C-x C-k b C-c abind current to C-c a
M-x <NAME>run NAME
C-x C-k e M-x <NAME>edit NAME
C-x C-k e C-h lmake recently typed keys and edit
C-x C-k lsame as previous
C-c C-q <KEY>insert key in editor
^Xinsert C-x in editor
<<COMMAND>>insert M-x COMMAND in editor
3 * R E Tinsert 3 newlines in editor
3 * ^ Msame as previous
3 * <<newline>>same as previous
3 * L F Dsame as previous
C-a ;;delete line in editor
C-a REMsame as previous
C-a C-ksame as previous
C-a ;;;comment line in editor
C-c C-csave edits
C-x C-f ~/.emacs RET M-x insert-kbd-macro RET <NAME> RETsave NAME
C-x C-f ~/.emacs RET M-x insert-kbd-macro RET RETsave last
C-x C-k SPCrun one step at a time
SPCrun current command
ysame as previous
TABrun current and consecutive similar commands
fskip command
nskip and delete from macro
dsame as previous
DELsame as previous
C-kskip current and delete rest of macro
qquit
C-gsame as previous
Iinsert one key
iinsert series of keys
Rreplace current key
rreplace current key with series of keys
Aappend to end of macro
aappend after current key
key
C-h lshow recently typed keys
M-x global-set-keyset for all buffers
M-x global-unset-keyremove binding for all buffers
M-x local-set-key define binding for current buffer
M-x local-unset-keyremove binding for current buffer
C-qinsert next character literally
C-q TABinsert literal tab character
C-q C-jinsert literal newline
C-q C-minsert literal carriage return
C-q C-linsert literal form feed (page delimiter)
C-x @ cmodify next key with Control
C-x @ mmodify next key with Meta
C-x @ Smodify next key with Shift
C-x @ hmodify next key with Hyper
C-x @ smodify next key with Super
C-x @ amodify next key with Alt
C-x @ C-hlist bindings starting with C-x @
C-x @ c C-x @ mmodify next key with Control and Meta
C-x @ c C-x @ m C-x @ hmodify with Control, Meta and Hyper
C-x C-hlist bindings starting with C-x
C-c C-hlist bindings starting with C-c
C-x 4 C-hlist bindings starting with C-x 4
C-x 5 C-hlist bindings starting with C-x 5
C-x 8 C-h list bindings starting with C-x 8
C-h 4 C-h list bindings starting with C-h 4
C-x ESC C-h list bindings starting with C-x M-
C-x C-[ C-h same as previous
M-: (describe-bindings "\e") RETlist bindings starting with ESC
M-x global-unset-key ESC C-h ESC C-hsame as previous
ESC ESC C-h list bindings starting with M-ESC
C-[ C-[ C-h same as previous
M-g C-h list bindings starting with M-g
M-o C-h list bindings starting with M-o
undo
C-x uundo, repeat to further undo
C-_undo, repeat to further undo
C-/undo, repeat to further undo
C-/ C-g C-/undo, then redo
C-/ C-/ C-g C-/ C-/undo, undo, then redo, redo
M-x revert-bufferrestore buffer with file on disk
C-x C-v RETsame as previous
M-x buffer-disable-undoturn off for current buffer
M-x buffer-enable-undoturn on for current buffer
search
C-s <MATCH>forward to end of MATCH
C-r <MATCH>reverse to front of MATCH
C-h k C-shelp
C-s C-h msame as previous
C-s C-h bshow key bindings
C-r C-s <MATCH>forward to end of MATCH
C-s C-r <MATCH>reverse to front of MATCH
C-s <MATCH> C-sforward to end of second MATCH
C-r <MATCH> C-rreverse to front of second MATCH
DELif not at first match, go to previous match
DELif at first match, delete character from search string
C-M-walways delete character from search string
C-[ C-wsame as previous
C-s <MATCH> C-s C-rforward to start of second MATCH
C-r <MATCH> C-r C-sreverse to end of second MATCH
C-s <MATCH> C-s C-s DELforward to end of second MATCH
C-r <MATCH> C-r C-r DELreverse to start of second MATCH
RETfinish search
C-gcancel search if current search is successful
C-gundo search to last successful search
C-s C-jsearch for newline
C-s C-q C-msearch for carriage return
C-s C-M-ysearch for current character
C-s C-[ C-ysame as previous
C-s C-M-y C-M-ysearch for next two characters
C-s C-M-y C-M-y DELsearch for current character
C-s C-wsearch for rest of current word
C-s C-w C-wsearch for next two words
C-s C-w C-w DELsearch for rest of current word
C-s M-s C-esearch for rest of current line
C-s M-s C-e DELundo search for rest of current line
C-s C-ysearch for last killed text (see “kill” below)
C-s M-ysearch for second to last killed text (see “kill” below)
C-s M-pshow previous search
C-s M-nshow oldest stored search
C-s M-TAB <BEGINNING> complete for BEGINNING of stored searches
C-s C-M-isame as previous
C-s C-[ C-isame as previous
C-s C-sresume last search backward
C-r C-rresume last search forward
M-eedit search
M-rtoggle regular expression search (see “regular expression” below)
M-ctoggle case-sensitivity of search
M-s wtoggle word-based search
M-%search, query, and replace (see “replace” below)
C-s <SEARCH> M-% <REPLACE>interactive query SEARCH and REPLACE
C-u M-%query replace by word
M-x isearch-toggle-case-foldchange case-sensitivity of all searches
non-interactive search
C-s RETforward case-sensitive
C-r RETbackward case-sensitive
M-x word-search-forwardignoring punctuation and whitespace
M-x word-search-backwardignoring punctuation and whitespace
regular expression
C-M-ssearch forward
C-[ C-ssame as previous
C-u C-ssame as previous
C-s M-rsame as previous
C-M-rsearch reverse
C-[ C-rsame as previous
M-rtoggle off regular expression syntax
C-M-s C-srepeat last regular expression forward
C-M-r C-srepeat last regular expression backward
C-rsuspend replacement and editing buffer (see “recursive edit” above)
C-M-cresume query and replace
C-[ C-csame as previous
C-M-%regular expression replace
C-M-s <SEARCH> M-% <REPLACE>interactive query replace (see “replace” below)
M-x occurshow matches in buffer (see “occur” below)
M-s osame as previous
M-s osame as previous
M-x how-manycount matches after point
M-x count-matchessame as previous
M-x flush-linesdelete matching lines to end of buffer
M-x keep-lineskeep matching lines delete the rest to end of buffer
M-s h rhighlight all matches in buffer
M-s h lhighlight all lines matching
M-s h phighlight phrase
M-s h uun-highlight
replace
M-%search, query, and replace
C-M-%search regular expression, query, and replace
C-[ C-%same as previous
M-% RETresume last
C-M-% RETresume last as regular expression
C-s <SEARCH> M-% <REPLACE>interactive
C-M-s <SEARCH> M-% <REPLACE>interactive with regular expression
yreplace one and go to next
SPCsame as previous
,replace but don’t move
nskip
DELsame as previous
^previous
!replace all
eedit replacement
C-rsuspend to edit buffer (see “recursive edit” above)
C-wdelete match and suspend to edit buffer
C-M-cfinish edit and resume
C-[ C-csame as previous
RETstop
qstop
C-x d *.c RET Q int RET longreplace “long” for “int” in .c files
delete
C-dcurrent character
C-u C-dnext 4 characters
C-u 8 C-dnext 8 characters
C-u C-u C-dnext 16 characters
DELcharacter backwards (backspace)
M-- C-dsame as previous
C-u C-u C-u DELprevious 64 characters
C-5 DELprevious 5 characters
M-1 0 DELprevious 5 characters
M-x delete-regionregion
M-x enable-command RET erase-buffer RETpermanently enable
M-x erase-bufferentire buffer
M-x flush-lines RET RETall lines including current to end of buffer
kill (cut)
C-SPC C-f C-wcharacter (see “character” below)
C-1 C-dsame as previous
C-1 DELcharacter backwards
C-- C-dsame as previous
M-dword (see “word” below)
C-kto end of line (see “line” below)
C-0 C-kbeginning of line
C-S-DELentire line
C-1 C-kline including newline
M-- C-kto beginning of previous line
C-u C-knext 4 lines
M-ksentence (see “sentence” below)
C-wregion (see “region” below)
M-wregion but don’t delete (copy)
M-dword (see “word” below)
C-DELword backwards
M-DELword backwards
C-M-ksexp (see “sexp” below)
C-[ C-ksame as previous
C-M-DELsexp backwards
C-[ C-DELsame as previous
C-x DELsentence backwards (see “sentence” below)
M-x kill-paragraphparagraph (see “paragraph” below)
M-x backward-kill-paragraphparagraph backwards (see “paragraph” below)
C-M-wappend to next
C-[ C-wsame as previous
C-M-w C-wregion appending to previous
C-M-w M-wregion appending to previous, but don’t delete (copy)
C-M-w C-kline appending to previous
C-M-w M-dword appending to previous
C-M-w M-ksentence appending to previous
C-M-w M-x kill-paragraphparagraph appending to previous
C-M-w C-M-ksexp appending to previous
C-M-w C-M-DELsexp backward appending to previous
M-zdelete everything to a character
M-1 M-zsame as previous
M-- M-zdelete everything to a character backwards
C-u -1 M-zsame as previous
C-u 3 M-zdelete everything to 3rd occurrence of a character
yank (paste)
C-ythe last kill sequence
C-ythe last kill sequence
C-y M-ythe 2nd to last kill sequence
C-2 C-ysame as previous
C-w C-y M-yreplace region with last kill
C-u C-ythe last kill sequence with point at beginning
mark
C-SPCset at current point
C-@set at current point
C-x C-xtoggle between current point and mark
C-u C-SPCmove to last set mark in current buffer
C-u C-@move to last set mark in current buffer
C-x C-SPCmove to last set mark in any buffer
C-x C-@move to last set mark in any buffer
C-x hbuffer
M-> M-<same as previous
M-@word
M-hparagraph
M-x mark-end-of-sentencesentence
C-M-hfunction
C-[ C-hsame as previous
C-x C-ppage separated by form feed
C-M-@sexp (see “sexp” below)
C-[ C-@same as previous
C-M-SPCsexp
C-[ C-SPCsame as previous
region
C-SPCset end-point of region (see “mark” above)
C-@set end-point of region
C-wkill (see “kill” above)
M-wkill but don’t delete (copy)
M-=count lines, words and characters
M-x enable-command RET narrow-to-region RETpermanently enable
C-x n nnarrow
C-x n wwiden
M-x delete-regiondelete
M-x write-region RET <FILE>save to FILE
M-x append-to-buffer RET <BUFFER>copy to point in BUFFER
M-x append-to-file RET <FILE>save to end of FILE
M-x copy-to-buffer RET <BUFFER> RETcopy and overwrite BUFFER
text register
C-x r s astore region to “a” key
C-u C-x r s akill region to “a” key
C-x r i ainsert region stored to “a” key
C-x r r astore rectangle to “a” key (see “rectangle” below)
point register
C-x r SPC astore current to “a” key
C-x r j amove to point to “a” key
window register
C-x r w astore configuration of windows in frame
C-x r j arestore window configurations
number register
C-u 1 C-x r n astore 1 to “a” key
C-u 1 C-x r + aadd 1 to number to “a” key
C-x r i ainsert number to “a” key
bookmark register
C-x r m RETsave default
C-x r m <NAME> RETsave as NAME
C-x r b RETmove to default
C-x r b <NAME> RETmove to NAME
C-x r llist
M-x bookmark-savesave all to file
whitespace
SPCinsert space
TABindent or insert tab (see “indent” below)
C-q TABinsert literal tab character
C-q C-linsert page separator
C-q 0 RETinsert null
M-SPCremove all whitespace at point except one space
M-\remove all whitespace around point
C-u M-\remove whitespace before point
C-SPC M-m C-wremove whitespace after point
M-x delete-trailing-whitespaceremove at end of all lines in buffer
C-a C-0 C-M-\remove leading for all lines in region
C-x h C-0 C-M-\remove all leading in lines buffer
M-x whitespace-modedisplay whitespace visually
M-x whitespace-toggle-optionsconfigure Whitespace Mode
indent
TABline with mode-specific rules
C-isame as previous
C-u TABline and (for supported modes) expression on subsequent lines
C-u C-isame as previous
M-mgo to indentation at beginning of line
M-o M-scenter line
C-M-\region with mode-specific rules
C-[ C-\same as previous
C-x h C-M-\ C-u C-SPCbuffer
C-x h C-M-\ C-u C-SPCbuffer
M-h C-M-\ C-u C-SPCparagraph
C-M-h C-M-\ C-u C-SPCdefun
C-x C-p C-M-\ C-u C-SPCpage
C-M-SPC C-M-\ C-u C-SPCsexp
C-u C-M-\region to 4 columns
C-SPC C-a C-u C-M-\line to 4 columns
C-x h C-u C-M-\buffer to 4 columns
C-x TABregion by one column more
C-SPC C-a C-x TABline by one column more
C-a SPCsame as previous
C-u C-x TABregion by 4 columns more
C-u 8 C-x TABregion by 8 columns more
C-u - 2 C-x TABregion by 2 columns less
C-x h C-u C-x TABinsert 4 columns for all lines in buffer
C-x h C-0 C-M-\remove from all in lines buffer
M-x tabifyconvert spaces in region to tabs
M-x untabifyconvert tabs in region to spaces
M-x set-variable RET indent-tabs-mode RET nil RETalways insert spaces
M-iindent to tab stop
M-x edit-tab-stopsconfigure stops
:insert a stop
SPCremove a stop
C-c C-csave stops
M-^remove and merge line with previous
C-a C-u M-x indent-toindent line to 4th column
newline
RETone
C-mone
C-jone and indent
C-oone below current and indent
M-x reindent-then-newline-and-indentindent current and indent next
C-q C-jliteral newline
C-q C-minsert literal carriage return
C-M-okeep text following point at same column
C-[ C-osame as previous
C-u 3 RETthree
C-u 3 C-mthree
C-u 3 C-jthree and indent
C-u 3 C-othree below current and indent
C-u C-M-omove text following point at same column without fill prefix
line
C-nnext
C-pprevious
C-abeginning
M-g ggo to
M-g M-ggo to
C-u M-g gin last buffer go to
C-u M-g M-gin last buffer go to
C-eend
C-kkill to end
C-0 C-kkill to beginning
C-a C-kkill from beginning to end
C-S-DELkill from beginning to end including newline
C-a C-k C-ksame as previous
C-1 C-kkill to end including newline
C-u C-kkill next 4
C-2 C-kkill next 2
M-- C-kkill to beginning of previous
M-^merge current line with previous
C-u M-^merge next line with current
C-n M-^same as previous
C-oinsert new after current and indent (see “newline” above)
C-M-okeep text following point at same column (see “newline” above)
C-[ C-osame as previous
C-x C-owhen not empty line, remove all empty lines below current
C-x C-owhen only empty line, remove all empty lines
C-x C-owhen empty, remove all but one empty lines
M-=count lines in region
C-x lcount lines in page
C-x h M-= C-u C-SPCcount lines in buffer
C-SPC M-> C-x C-x M-=count lines from point forward
M-> C-x C-x M-=same as previous
M-x what-linedisplay number
C-x C-ttranspose with previous
C-0 C-x C-tswap with line of mark (see “mark” above)
M-x sort-linesalphabetically (see “sort” below)
M-x reverse-regionreverse order in region
M-x occurshow lines matches in buffer (see “occur” below)
M-x how-manycount matches
M-x flush-linesdelete matches to end of buffer
M-x flush-lines RET RETdelete all lines after point
M-x keep-lineskeep matches to end of buffer, delete the rest
C-SPC C-SPC C-2 C-SPC M-x keep-lineskeep matches in region, delete rest
C-a C-SPC C-e C-x n nnarrow
C-x RET f unix RETchange file to UNIX style line endings
C-x RET f dos RETchange file to DOS
C-x RET f dos RETchange file to Mac
C-x RET f utf-8 RETchange file to UTF-8
M-x line-number-modeshow line number in mode line
M-x toggle-truncate-lineschange if long lines fold or are truncated
M-x toggle-word-wrapchange if long lines are wrapped at word boundary
character
C-fforward
C-bbackward
C-ddelete (see “delete” above)
C-1 C-dkill (see “kill” above)
C-ttranspose
C-x =information of current
C-u C-x =list properties of current in Help buffer
M-x describe-charsame as previous
M-x goto-char RET <N> RETvisit Nth character in buffer
M-x list-characters-setslist names of charsets
C-q 0 RETinsert null
C-q SPCinsert space
C-q 40 RETinsert space using octal value 40
M-x set-variable RET read-quoted-char-radix 16use hex for C-q
C-q 20 RETinsert space using hex value 20
M-x set-variable RET read-quoted-char-radix 10use decimal for C-q
C-q 32 RETinsert space using decimal value 32
C-u 8 C-q 0 RETinsert 8 null characters
C-u 8 C-u 0 RETinsert 8 zeros
word
M-fforward
M-<right>same as previous
C-<right>same as previous
M-bbackward
M-<left>same as previous
C-<left>same as previous
M-dkill forward
C-DELkill backward
M-DELkill backward
M-ttranspose
M-@mark
C-u 100 M-@mark next 100
M-- 3 M-@mark previous 3
M-< M-x how-many RET \w+ RETcount for buffer
C-x h M-=same as previous
M-x modify-syntax-entry RET - w RETmake hyphens word character
M-x modify-syntax-entry RET _ w RETmake underscores a word character
capitalization
M-llowercase next word
M-- M-llowercase previous word
C-u M-llowercase next 4 words
M-uuppercase next word
M-- M-uuppercase previous word
C-u 2 M-luppercase next 2
M-ccapitalize next
M-- M-ccapitalize previous
C-u 2 M-ccapitalize next 2
M-x enable-command RET downcase-region RETpermanently enable
C-x C-llowercase region
M-x enable-command RET upcase-region RETpermanently enable
C-x C-uuppercase region
M-x capitalize-regioncapitalize region
sentence
M-abeginning
M-eend
M-x mark-end-of-sentencemark
M-kkill forwards to end
C-x DELkill backwards to beginning
M-x transpose-sentencestranspose
M-x repunctuate-sentencesfix spaces forward with query and replace
paragraph
M-}forward
M-{backward
M-hmark
M-qfill
C-u M-qfill and full justify
M-x fill-regionfill all in region
M-x fill-region-as-paragraphfill all region together as one
M-x fill-individual-paragraphsfill region as separate
C-x f RET set fill column to current point
C-x f 72 RET set fill column to 72
C-u 72 C-x fsame as previous
M-x backward-kill-paragraphkill to beginning
M-x kill-paragraphkill to end
M-{ M-x kill-paragraphkill entire
M-h C-wkill entire
M-h M-wkill entire but don’t delete (copy)
M-x transpose-paragraphstranspose
M-o M-Scenter
M-x set-justification-leftjustify region to the left
M-x set-justification-rightjustify region to the right
M-x set-justification-fulljustify region to full width
M-x set-justification-centerjustify region to the center
M-x set-justification-noneunjustify region
M-x sort-paragraphsalphabetically
C-u M-x sort-paragraphsin reverse
M-x paragraph-indent-text-modeexpect leading space rather than empty lines
M-x auto-fill-modeautomatically fill at the end of the line
M-x refill-modeautomatically fill entire paragraph after each edit
M-x use-hard-newlinesdistinguish intentional newlines from filling
C-x TABincrease left margin of region by one column
C-u C-x TABincrease left margin of region by 4 columns
C-u 8 C-x TABincrease left margin of region by 8 columns
C-u - 2 C-x TABdecrease left margin of region by 2 columns less
M-x increase-left-marginadd 4 columns to current paragraph
M-x decrease-left-marginremove 4 columns to current paragraph
C-x .set text to beginning of line as fill prefix
C-M-\add the fill prefix in region
C-[ C-\same as previous
M-m C-x .set indentation as fill prefix
C-a C-x .reset fill prefix
page
C-q C-linsert separator
C-x ]forward
C-x [backward
C-x lcount lines
C-x C-pmark
C-x n pnarrow
C-x n wwiden
M-x sort-pagesalphabetically
M-x what-pagedisplay number
sexp (parenthetical expressions)
M-(insert opening and closing parentheses
M-)reindent current and start new line past closing parenthesis
C-M-fmove to the next
C-[ C-fsame as previous
C-M-<right>same as previous
C-M-bmove backward
C-[ C-bsame as previous
C-M-<left>same as previous
C-M-dmove down into the expression
C-[ C-dsame as previous
C-M-<down>same as previous
C-M-umove up from current and to beginning of outside
C-[ C-usame as previous
C-M-<up>same as previous
M-x up-listmove up from current and to end of outside
M-- C-M-usame as previous
C-M-kkill
C-[ C-ksame as previous
C-M-DELkill backward
C-[ C-DELsame as previous
C-M-@mark
C-[ C-@same as previous
C-M-ttranspose
C-[ C-tsame as previous
M-x check-parensmatch all open and closed parentheses in buffer
function
C-M-ago to beginning
C-[ C-asame as previous
C-M-ego to end
C-[ C-esame as previous
C-M-hmark current
C-[ C-hsame as previous
C-M-h C-M-\ C-u C-SPCindent current
C-M-xevaluate current (see “emacs lisp” below)
C-[ C-xsame as previous
C-x n dnarrow
C-x n wwiden
comment
M-;new
M-;indent
C-u M-;kill current
C- M-;kill current
C-SPCset end point of region
M-x comment-regionregion
M-x uncomment-regionremove comment characters in region
C-x C-x M-;region, or uncomment if already
C-x ;set to start at point
M-- C-x ;kill on this line
C-u C-x ;insert and align or just align to column on previous line
M-jif within one, continue on next line and indent
C-M-jsame as previous
C-[ C-jsame as previous
M-x comment-boxsurround region
M-^merge current line with previous
C-u M-^merge next line with current
C-n M-^same as previous
occur
M-x occurlist matching lines for regular expression
M-s osame as previous
C-x n n M-x occurshow matches in region (see “region” above)
C-u 3 M-x occurshow matches with 3 lines of context
C-u - 3 M-x occurshow matches with 3 lines before match
?help
hsame as previous
RETgo to current match
C-c C-csame as previous
osame as previous
C-oshow current match in other window
nnext match
pprevious match
gupdate list of matching lines
ckeep Occur buffer around by cloning
rkeep Occur buffer around by renaming
qquit
zquit and kill buffer
eedit buffer from Occur buffer
transpose
C-tcharacters (see “character” above)
M-- C-tprevious with its previous
C-u 3 C-tforward 3 characters
C-u C-tforward 4 characters
M-- 3 C-tbackward 3 characters
C-u C-tbackward 4 characters
M-twords (see “word” above)
C-x C-tlines (see “line” above)
M-x transpose-paragraphsparagraphs (see “paragraph” above)
M-x transpose-sentencessentences (see “sentence” above)
C-M-tparenthetical expressions (see “sexp” above)
column
M-0 M-x move-to-columnmove to first column
M-x move-to-columnmove to second column
M-7 M-x move-to-columnmove to column 8
M-x column-number-modeshow column number in mode line
M-x enable-command RET set-goal-column RETpermanently enable
M-rmove to beginning of center line of window (see “window” above)
C-x C-nset column for line motion commands
C-u C-x C-nunset goal column for line motion commands
M-x ruler-modeadd a ruler to the current buffer’s window
rectangle
C-x r M-wcopy rectangle as kill
C-x r ddelete, no kill
C-x r kkill
C-x r yyank
C-x r cconvert to whitespace
C-x r oinsert whitespace
C-x r t <STRING>replace each line with STRING
M-x string-insert-rectangleinsert STRING at each line
M-x delete-whitespace-rectangleremove leading whitespace
M-x delete-whitespace-rectangleremove leading whitespace
C-x r r astore to register “a”
C-x r Nnumber region starting at 1
C-u C-x r N 10 RET %03d SPC RETnumber region starting with 010
table
M-x table-insertinsert
M-x table-recognize-tableactivate mode at point
M-x table-unrecognize-tabledeactivate mode at point
TABforward cell
S-TABbackward cell
C-u M-x table-recognize-tableinactivate table at point
C-u 3 M-x table-insert-columninsert 3 columns
C-u 3 M-x table-delete-columndelete 3 columns
C-u 3 M-x table-insert-rowinsert 3 rows
C-u 3 M-x table-delete-rowdelete 3 rows
C->widen column at point
C-<narrow column at point
C-}heighten row at point
C-{shorten row at point
C-:justify text in cell
C-|split cell
C-c C-c *merge cell
M-x table-sequenceinsert sequence of characters or numbers
M-x table-capture RET C-q C-i RET C-q C-j RET RET RETconvert tab delimited region
M-x table-generate-sourceconvert to HTML or LaTeX
M-x table-recognizeactivate mode for all
M-x table-unrecognizedeactivate mode for all
delimited text
M-x delimit-columns-customizechange settings
M-x delimit-columns-rectangleformat rectangle (see “rectangle” above)
M-x delimit-columns-regionformat region
align
C-u M-x alignby guessing separator
M-x align-currenton entire “section”
M-x align-regexpbased on regular expression
C-u M-x align-regexpask for grouping, number of spaces and repeating
sort
M-x sort-lineslines alphabetically in region
C-u M-x sort-linesin reverse
C-3 M-x sort-fieldsregion alphabetically by 3rd word in each line
M-x sort-numeric-fieldsregion numerically by 3rd number in each line
M-x sort-columnslines alphabetically for column between point and mark
C-u M-x sort-columnsin reverse
M-x sort-paragraphsparagraphs alphabetically (see “paragraph” above)
C-u M-x sort-paragraphsin reverse
M-x sort-pagespages alphabetically (see “page” above)
M-x sort-regexp-fieldsrecords alphabetically by key in region
directory (folder)
M-x cdchange working
M-x make-directory RET <PATH> RETmake PATH including any missing parents
M-x delete-directory RET <NAME> RETdelete NAME
M-x copy-directory RET <NAME> RETdelete NAME
M-x rename-file RET RET <NAME> RETrename current to NAME
C-x d RETlist current
C-x C-f RETsame as previous
C-x 4 d RETlist current in other window (see “window” above)
C-x d .. RETlist parent
C-x C-f .. RETsame as previous
C-x C-d RET ^same as previous
C-x C-d RET C-x C-jsame as previous
C-x d <PATH> RETlist PATH
C-x C-f <PATH> RETsame as previous
?help
?show recent errors
M-x dired-jump RET RETgo to listing of current file
>go to next
<go to previous
nnext file
pnext file
jmove to file in listing
greread the listing
stoggle sort by date
^list parent
M-x dired-jumplist parent
C-u sedit the command switches for the file list command
M-x auto-revert-modeautomatically update list every 5 seconds
C-ssearch listings (see “search” above)
RETopen file or directory
fsame as previous
esame as previous
oopen in other window
C-odisplay in other window
yshow file type
+add new
ishow listing of current subdirectory
C-u s R RETshow listings of all subdirectories, “fully recursive”
$hide listing of current subdirectory
M-$hide listing of all subdirectories
C-M-ngo to next subdirectory listings
C-M-pgo to previous subdirectory listings
C-x C-f <FILE> RETvisit FILE (see “file” above)
!run command on current file
M o+r RETmake current file world-readable
O <OWNER> RETchange current file to OWNER
G <GROUP> RETchange current file to GROUP
R <FILE> RETmove current file to FILE
R M-n ~ RETadd ~ to the end of current file’s name
C <FILE> RETcopy current file to file
C M-n ~ RETmake a tilde copy the current file
P RETsend current file to default printer
P RET M-DEL a2psprint current file in Postscript
P SPC -P SPC <PRINTER>send current file to <PRINTER>
Ttouch current file
Zcompress current file
H <FILE> REThardlink current file to FILE
S <FILE> RETsymlink current file to FILE
mmark current file
uunmark current file
DELunmark current file and go to previous
ttoggle marks
Uunmark all files
* !same as previous
Asearch marked
M-s a C-ssame as previous
M-s a C-M-ssearch marked with regular expression
M-,find next match
wkill marked file but don’t delete
khide marked files
Ccopy marked files to another directory
Rmove marked files to another directory
dmark current file for deletion
% d <PATTERN>mark files containing PATTERN for deletion
% &mark garbage files for deletion
#####mark auto-save files for deletion (see “file” above)
.delete numerical backups
Ddelete marked files
M-x wdired-change-to-wdired-modemanually edit listing with WDired
C-c C-cquit WDired and commit the edits made to the listing
C-c ESCcancel WDired
C-c C-[same as previous
M-x find-name-dired RET <PATTERN> RETlist file names matching PATTERN
M-x find-grep-dired RET <PATTERN> RETlist files containing grep PATTERN
M-x find-lisp-find-dired RET <REGEXP> RETlist files containing REGEXP
% g <PATTERN>mark files containing PATTERN
% m <PATTERN>mark file names matching PATTERN
* %same as previous
M-}go to next marked file
* C-nsame as previous
M-{go to previous marked file
* C-psame as previous
* *mark executables
* @mark symlinks
* /mark directories
qquit
dired-x
M-x load-library RET dired-x RETload extra Dired functionality
* .mark extension
C-x C-jlist parent
M-!smart shell command
M-x dired-do-relsymlink <FILE> RETrelative symlink current file to FILE
Y <FILE> RETrelative symlink current file to FILE
%Y <REGEXP> RETrelative symlink files matching REGEXP to current file
Fopen marked files
Vsend file by email
M-ohide uninteresting files
M-Ggo to subdirectory listing in buffer
tramp
C-x C-f /HOST:DIR/FILEopen FILE in DIR on remote HOST
C-x C-f /scp:HOST:DIR/FILEsame but use secure copy (SCP)
C-x C-f /ssh:HOST:DIR/FILEsame but demand the use of SSH
C-x C-f /ssh1:HOST:DIR/FILEsame but demand version 1 of SSH
C-x C-f /HOST:DIRlist contents of DIR on remote HOST
C-x d /HOST:DIRsame as previous
M-x shellstart a remote shell at HOST
spell check
M-$word
M-x ispell-bufferbuffer
M-x ispell-regionregion
M-x ispell-comments-and-stringswords and comments in source file
qquit
M-x ispell-continueresume suspended session
M-redit word at point in buffer (see “recursive edit” above)
C-M-creturn to spell check by exiting recursive edit
C-[ C-csame as previous
4use third suggested choice
0use first suggested choice
?quick help
SPCcontinue
aaccept for this session
Aadd to buffer local dictionary
rreplace word with typed version
Rreplace every occurrence of word with typed version
Xsuspend
M-x ispell-change-dictionarychange default dictionary
M-x flyspell-modehighlight misspellings as you type
M-x flyspell-prog-modehighlight misspellings in source code
M-x flyspell-bufferhighlight existing misspellings
C-,next misspelling in buffer
C-.insert correction for current word from dictionary
C-. C-.choose second proposed correction for correct word
C-;propose correction for previous word from dictionary
C-; C-;use second proposed correction for previous word
C-c $select correct word at or before point from a pop up menu
abbreviations
cpu C-x a i g computer RETdefine “cpu” as “computer”
computer C-3 C-x a g cpu RETsame as previous
cpu C-x a eexpand “cpu” to “computer”
cpu C-x a 'same as previous
cpu C-x 'same as previous
M-x abbrev-modeautomatically expand
C-/undo expansion
C-x a uundo last expand
super M-' cpu C-x 'insert “supercomputer”
C-x a i ldefine new mode-specific
C-x a C-llist all
C-x a C-eedit all
M-x expand-region-abbrevsexpand in region
M-x write-abbrev-filesave
M-x read-abbrev-fileopen
M-x kill-all-abbrevsdelete all
composition
C-\ french-postfix RETset to French characters
C-\disable input method, subsequent re-enables
C-h C-\ REThelp with current input method
e 'insert a letter E acute
e ' 'insert a letter E and a quote character
a `insert a letter A grave
e `insert a letter E grave
u `insert a letter U grave
a ^insert a letter A circumflex
e ^insert a letter E circumflex
i ^insert a letter I circumflex
o ^insert a letter O circumflex
u ^insert a letter U circumflex
c ,insert a letter C with cedilla
c , ,insert a letter C and comma
e "insert a letter E umlaut
i "insert a letter I umlaut
u "insert a letter U umlaut
< <insert an open quotation mark
> >insert a closed quotation mark
C-x RET C-\ spanish-prefix RETchange to Spanish characters
i `insert a letter I grave
o `insert a letter O grave
n ~insert a letter N with tilde
C-x RET C-\ german-postfix RETchange to German characters
a einsert a letter A umlaut
a e einsert the letters A and E, no umlaut
o einsert a letter O umlaut
o e einsert the letters O and E, no umlaut
u einsert a letter U umlaut
u e einsert the letters U and E, no umlaut
s zinsert the ligature eszett
s z zinsert the letters S and Z
coding
C-h C <SYSTEM> RETdescribe SYSTEM
C-h C RETdescribe current system
M-x list-coding-systemsdisplay coding systems
environment
M-x setenv <VAR> RET <VALUE> RETset VAR to VALUE in Emacs
M-x setenv <VAR> RET M-pedit current value of VAR
C-u M-x setenv <VAR> RET unset VAR
M-x getenv <VAR> RETshow value of VAR
M-x getenv TABshow current variables
M-x list-processeslist running processes in Emacs
M-x signal-process <PROCESS> RET <SIGNAL>send SIGNAL to any PROCESS
shell
M-!run command
C-u M-!insert output of command
C-SPCset end point of region
M-|send region to command
C-u M-|replace region with output of command
M-&run command in the background asynchronously
M-x shellnew window
C-u M-x shell RET RETnew buffer
C-u M-x shell RET <NAME> RETnew buffer with NAME.
C-c C-abeginning of command line
C-c C-ego to command prompt and to the end of command
C-c C-eredisplay buffer so prompt is at bottom (see “redisplay” above)
C-c C-fforward command when looking at multi-command
C-c C-bbackwards command when looking at multi-command
C-c C-wkill word backward (see “word” above)
M-DELsame as previous
C-c C-dsend “end of file” to the process
C-c C-csend process interrupt
C-c C-zstop the process
C-c C-\quit the process
C-c SPCadd newline to command
C-q C-jsame as previous
C-c C-llist command history
M-pprevious command
M-nnext command
M-rsearch history backward
C-c M-rnext history match backward
C-c M-shistory match forward
C-c C-rshow beginning of output for last command
C-x C-w <FILE> RETsave session transcript to FILE
C-c C-s <FILE> RETwrite output of last command to FILE
C-u C-c C-s <FILE> RETappend output of last command to FILE
shell script
C-x C-f file.sh RETstart a script named file.sh
M-x shell-script-modeuse shell script mode for current buffer
M-x sh-modesame as previous
C-c :specify shell and insert header
C-c C-xrun the script
C-M-xexecute region
C-[ C-xsame as previous
M-abeginning of command
M-eend of command
C-M-abeginning of function
C-[ C-asame as previous
C-M-eend of function
C-[ C-esame as previous
TABindent
C-jnewline and indent
C-c <use indentation level of current line
C-c >analyze buffer’s indentation and show inconsistencies
C-c =set indentation level for syntactic type at point
C-c ?show indentation level at point
C-c TABinsert if statement
C-c C-finsert for statement
C-c C-cinsert case statement
C-c C-tinsert syntax for temporary file
C-c (insert syntax for function
executable
M-x executable-set-magicset interpreter command and arguments
M-x executable-self-displaymake file a command to display itself
M-x executable-interpretinterpret current file
C-x `go to next error
M-: M-( executable-find "COMMAND" RETfind path for COMMAND
lisp
C-M-abeginning of defun
C-[ C-asame as previous
C-M-eend of defun
C-[ C-esame as previous
C-M-nforward list
C-[ C-nsame as previous
C-M-pbackward list
C-[ C-psame as previous
C-M-ddown sexp (see “sexp” above)
C-[ C-dsame as previous
C-M-uupward sexp
C-[ C-usame as previous
M-x up-listupward sexp and forward
M-(insert parens for sexp
C-M-ttranspose sexp
C-M-SPCmark sexp
C-[ C-SPCsame as previous
C-c C-zrun interpreter
C-M-xeval expression at point
C-[ C-xsame as previous
M-;insert new comment
C-u M-;kill current comment
C-x n dnarrow to current defun
C-x n wwiden
emacs lisp
C-x C-eevaluate expression before point
C-u C-x C-eevaluate expression and insert result at point
C-M-xevaluate current defun
C-[ C-xsame as previous
M-:prompt for expression then evaluate
C-u M-:eval expression and insert result at point
TABindent (see “indent” above)
C-isame as previous
C-u TABindent line and expression for subsequent lines
C-u C-isame as previous
C-M-qindent expression after point
C-[ C-qsame as previous
C-u C-M-qpretty print expression after point
M-TABcomplete symbol at point
C-M-isame as previous
C-[ C-isame as previous
M-x eval-regionevaluate expressions in region
M-x eval-bufferevaluate buffer
M-x load-file RET <FILE> RETload FILE
M-x load-file RET RETload current file
M-x load-libaryload library
M-x locate-librarypath of library
M-x find-library <LIBRARY>go to LIBRARY
M-x locate-library RET TABshow all libraries on load-path
M-x apropos-libary RET <LIBRARY> RETlist definitions in library
M-x list-load-path-shadowsshow library conflicts in load-path
C-h Pdescribe library
C-h pfind packages (see “finder” below)
M-x customize-set-variablepermanently set a variable
M-x set-variable RET <VAR> RET <VALUE> RETtemporarily set VAR to VALUE
M-x make-local-variable RET <VAR> RETscope VAR to current buffer
M-x kill-local-variable RET <VAR> RETmake VAR global for current buffer
M-x byte-compile-file RET <FILE> RETbyte compile current FILE
M-x byte-compile-file RET RETsame as previous
M-x byte-recompile-directorybyte compile every file, recursively
M-0 M-x byte-recompile-directorybyte compile every file, recursively
M-x compile-defunbyte compile defun
C-x `go to source code for compile error (see “compile” below)
M-x find-function RET <FUNCTION> RETgo to definition of FUNCTION
M-x find-function RET RETgo to definition of function at point
M-x find-variable RET <VARIABLE> RETgo to definition of VARIABLE
M-x find-variable RET RETgo to definition of variable at point
M-x emacs-lisp-modestart Emacs Lisp mode if not started
M-x checkdocvalidate coding style
M-x checkdoc-ispelland spell check comments and documentation strings
M-x toggle-debug-on-errorenable debugger on error
M-x toggle-debug-on-quitenable debugger on quit
elisp interaction
M-x lisp-interaction-modeevaluate expressions interactively
C-jevaluate sexp before point and insert results on next line
C-M-xevaluate current defun (see “emacs lisp” above)
C-[ C-xsame as previous
debug elisp
M-x toggle-debug-on-errorchange whether to start session on error
M-x toggle-debug-on-quitchange whether C-g starts session
M-x debug-on-entry RET <FUNCTION> RETdebug FUNCTION
hhelp
SPCmove down
C-nmove down
5 SPCmove 5 down
- 2 SPCmove 2 up
C-pmove up
2 C-pbackward 2 lines
TABgo up level in expression
S-TABgo down lower level
RETvisit help or source location for thing at point
ccomplete evaluation level at current point
qquit
dstep into
bset breakpoint
uunset breakpoint
jset breakpoint and continue
rprompt for return value then continue
eprompt for expression then evaluate
Rprompt for expression then evaluate and record it
llist functions debugged on entry
M-x cancel-debug-on-entry <FUNCTION> RETdon’t debug FUNCTION
M-x cancel-debug-on-entry RET RETdon’t debug for any function
source-level debugger
M-x edebug-defunturn on instrumentation for current function definition
C-u C-M-xsame as previous
C-M-xturn off instrumentation for current function definition
SPCstep expression in source
C-x X SPCfrom any buffer, step into expression in source
tslowly step
Tstep fast
Sstop stepping
nstep to next expression
istep in
ostep out
fstep forward
rshow last result again in minibuffer
bset breakpoint
uunset breakpoint
C-c C-dunset breakpoint
x <EXPRESSION> RETset conditional break on result of EXPRESSION
Bmove to next breakpoint
gcontinue until next breakpoint
Bcontinue to next breakpoint
ccontinue to breakpoints slowly
Ccontinue to breakpoints fast
Sstop continuing
Gstop debugging and finish
Pvisit buffer before running Edebug
vvisit buffer before running Edebug
pmomentarily visit buffer before running Edebug
wmove back to current point in source
C-c C-lmove back to current point in source
C-x X wfrom any buffer, move back to current point in source
?help
C-x X C-hlist bindings starting with C-x X
eprompt for expression then evaluate
dshow backtrace
=display frequencies in comments for each line for current function
aabort
C-]abort
qquit
C-x X qsame as previous
Qquit
finder
C-h plist keywords
M-x finder-commentary RET <LIBRARY> RETdescribe LIBRARY
?help
nmove down
pmove up
RETfor keyword at point, list Emacs Lisp libraries
RETfor package at point, show commentary for Emacs
fsame as previous
SPCsame as previous
dback to beginning of package directory
qquit
C
C-h mhelp
M-x c-versionversion of mode
C-c C-sshow syntax information of current point
C-c . gnu RETuse gnu coding style
C-c . k&r RETuse Kernighan and Ritchie coding style
C-c . linux RETuse Linux kernel coding style
C-c . bsd RETuse BSD coding style
M-x imenu-add-menubar-indexadd index menu to menu bar for current file
M-x compilerun compiler (see “compile” below)
M-x recompilererun compiler
M-x cwarn-modehighlight problematic syntax in current file
M-x global-cwarn-modehighlight problematic syntax for all source files
M-x cpp-highlight-bufferhighlight preprocessor conditionals
M-x hide-ifdef-modefold conditional preprocessor blocks
TABindent
C-iindent
M-mgo to indentation at beginning of line
C-jnewline and indent
C-c C-ltoggle automatic indentation with “electric” characters
C-c C-atoggle automatic newlines
C-c C-ccomment region
C-u C-c C-cuncomment region
C-u 3 C-c C-ccomment region with 3 asterisks
C-1 C-c C-ccomment region
M-- C-c C-cremove 1 asterisks from comments in region
M-- 3 C-c C-cremove 3 asterisks from comments in region
M-qfill comment or string literal
M-fmove to end of current or next word of identifier or field
M-bmove to beginning of current or next word of identifier or field
M-@mark to end of current word or next word of identifier or field
C-c C-wtoggle whether word motion understands mixed-case identifiers
C-M-fmove to end of operator, ident, string, paren, brace
C-M-bmove to beginning of operator, ident, string, paren, brace
M-abeginning of statement
M-eend of statement
C-M-abeginning of function definition
C-M-eend of function definition
M-- C-M-abeginning of next function
M-- C-M-eend of previous function
C-x n dnarrow to function definition
C-x n wwiden
C-M-hmark current function
C-M-@mark to end of operator, ident, string, paren, brace
C-x C-x TABindent lines in region properly
C-M-\same as previous
C-x h C-M-\ C-u C-SPCindent buffer properly
C-c C-qindent current function properly
C-c C-\align backslash characters in region
C-u C-c C-\delete backslash characters in region
M-x set-variable RET c-backslash-column 48 RETset backslash column to 48
C-c C-nbeginning of next preprocessor conditional
C-c C-pbeginning of previous preprocessor conditional
C-c C-ubeginning of current preprocessor conditional
M-- C-c C-uend of preprocessor conditional
C-c DELhungrily delete all whitespace including newlines backwards
C-c C-DELsame as previous
M-^merge current line with previous
C-u M-^merge next line with current (see “line” above)
C-n M-^same as previous
C-c C-dhungrily delete all whitespace including newlines forwards
M-x c-toggle-hungry-statealways hungrily delete whitespace
C-c C-eshow expansion of macros for region in other window
M-x set-variable RET c-tab-always-indent RET nildon’t indent mid-line
compile
M-x compileexecute a compilation command
M-x recompileexecute last compilation command
C-c C-kkill
C-x `go to source code for next error
M-- C-x `go to source code for previous error
C-x ovisit compilation buffer
M-nnext error
M-pprevious error
M-}errors for next file
M-{errors for previous file
RETgo to source code for error specified at point
C-c C-csame as previous
grecompile
C-u gprompt for command then recompile
hide
M-x hs-minor-modestart Hide Show minor mode if not started already
C-c @ C-ctoggle current block
C-c @ C-hhide current block
C-c @ C-sshow current block
C-c @ C-M-hhide all
C-c @ C-M-sshow all
C-c @ d <VAR>show blocks should VAR be defined
C-c @ u <VAR>hide blocks should VAR be undefined
tag
M-! etags *.[ch]index .c and .h files in current directory
C-u M-x visit-tags-tableset index file for current buffer
M-x visit-tags-tableglobally set index file
M-.go to definition of symbol in index
C-M-.go to definition for a regular expression in index
C-u M-.go to next definition
M-- M-.go to previous definition
M-*return back to before you started
M-x tags-searchgo to entry for regular expression in index
M-,go to next entry in index
M-x tags-query-replacesearch and replace for regular expression
M-TABcomplete tag at point
C-M-isame as previous
C-[ C-isame as previous
C-u M-TABcomplete language symbol, avoid tags, at point
M-x list-tagsfor a source file
M-x tags-apropos RET <PATTERN> RETlists tags matching PATTERN
M-x tags-reset-tags-tablesforget all previous
M-x select-tags-tablechoose tags file to use
make
C-x C-f Makefile RETnew
C-x C-f foo.mk RETnew
M-nnext target
M-pprevious target
C-c C-\backslash region
C-c C-ccomment region
C-c C-blist macros and targets
C-c C-ulist up-to-date status for targets
diff
M-x diff RET <OLD> RET <NEW> RETcompare OLD file with NEW file
C-u M-x diffcompare files but prompt for Diff switches
M-x diff-buffer-with-filecompare buffer with file on disk
M-x diff-backupcompare current file with backup on disk
M-x diff RET RETsame as previous
M-x diff-modestart Diff Mode if not already started for a file
C-c C-cgo to corresponding location in target (new) file
C-u C-c C-cgo to corresponding location in source (old) file
C-u C-u C-c C-calways go to corresponding location in source file
C-c C-aapply current hunk
C-u C-c C-arevert current hunk
C-c C-ttest current hunk
C-c C-ttest current hunk in reverse
M-nmove start of next hunk
M-pmove to start of previous hunk
M-}move to start of next file in multiple file patch
M-{move to start of previous file in multiple file patch
C-c C-nnarrow to hunk
C-x n wwiden
C-u C-c C-nnarrow to file of multiple file patch
M-kkill the current hunk
M-Kkill the current file in multiple file patch
C-c C-ssplit the hunk in two
C-c C-rreverse direction of entire patch
C-u C-c C-rreverse direction of patch in region
C-x 4 anew change log entry using context of current location
C-c C-uconvert the entire buffer from unified to context format
C-u C-c C-uconvert the entire buffer from context to unified format
C-c C-uconvert the entire buffer
C-c C-estart ediff session
version control (vc)
C-x v C-hlist bindings for prefix
C-x v iregister file
C-x v vcheck in or out, depending on the current state
C-c C-cfinish editing log for check in
C-u C-x v vcheck in or out a specific revision
C-x v ~open past revision in new window
C-x v =diff with current revision
C-u C-x v =diff with specific revision
C-x v lshow log
C-x v uundo checkout
C-x v cdelete the latest revision
C-x v gannotate file by each line showing when added and by whom
C-x v dshow checked out files
C-x v s RET <NAME> RETtag all the files in directory with NAME
C-u C-x v s RET <NAME> RETtag files and create branch
C-x v r <NAME>recursively checkout files for a snapshot
C-x v aupdate ChangeLog (see “changelog” below)
C-x v mmerge two revisions
C-x v hinsert revision header keyword
M-x vc-resolve-conflictsstart ediff (see “ediff” below) on file
changelog
C-x 4 astart new entry using context of current file
C-x 4 astart new entry in current log file
C-c C-pinsert previous log from version control
M-qfill paragraph following syntax rules
M-x change-log-merge RET <FILE> RETmerge current with log FILE
C-x v agenerate entries from version control
merge conflict
M-x smerge-modestart Smerge Mode if not started
C-c ^ nmove to next
C-c ^ pmove to previous
C-c ^ bkeep base
C-c ^ mkeep mine
C-c ^ okeep other
C-c ^ RETkeep what is under point
C-c ^ akeep all
C-c ^ ccombine current with next
C-c ^ rauto resolve
M-x smerge-resolve-allauto resolve entire buffer
grep
M-x grep RET <REGEXP> SPC <FILES> RETshow matches in FILES for REGEXP
M-x lgrep RET <REGEXP> RET <FILES> RETshow matches in FILES for REGEXP
M-x lgrep RET <REGEXP> RET RETshow matches in all C files
M-x lgrep RET <REGEXP> RET ch RETsame as previous
M-x lgrep RET <REGEXP> RET c RETshow matches in C source files
M-x lgrep RET <REGEXP> RET h RETshow matches in header files
M-x lgrep RET <REGEXP> RET l RETshow matches in ChangeLog files
M-x lgrep RET <REGEXP> RET m RETshow matches in Make files
M-x lgrep RET <REGEXP> RET tex RETshow matches in TeX files
M-x lgrep RET <REGEXP> RET *.html RETshow matches in HTML files
M-x egrep RET <REGEXP> RET <FILES> RETextended regular expressions
M-x igrep RET <REGEXP> RET <FILES> RETcase insensitive matching
M-x grep-find RET <REGEXP> RETshow matches in entire directory tree
M-x rgrep RET <REGEXP> RET *.html RET RETsame, but HTML files
M-x rgrep RET <REGEXP> RET RET RETsame, but C files
M-x rgrep RET <REGEXP> RET el RET RETsame, but Emacs Lisp files
C-x `visit next match
M-g M-nvisit next match
M-g nvisit next match
M-- C-x `visit the previous match
C-u 2 C-x `visit the second next match
C-u 5 C-x `visit the fifth next match
C-u C-x `visit the first match
M-g pvisit previous match
M-g M-pvisit previous match
C-x omove to buffer with listed matches
C-c C-kstop
TABmove to next match
S-TABmove to previous match
RETgo to match in file
C-c C-cgo to match in file
M-nshow next match in other window
nshow next match in other window
M-pshow previous match in other window
pshow previous match in other window
SPCscroll down
DELscroll up
M-}move to start of matches in next file
}move to start of matches in next file
M-{move to end of matches in previous file
{move to end of matches in previous file
C-c C-fautomatically show match in other window with follow mode
C-c C-fdisable follow mode
M-x find-grep-dired(see “directory” above)
locate
M-x locate RET <PATTERN> RETshow files matching PATTERN
M-x locate-with-filter RET <PATTERN> RET <REGEXP>same, but also match REGEXP
M-x locate-with-filtershow
C-nnext matched file
C-pprevious matched file
RETvisit current file at
C-oopen file in other window
Vopen current file in dired (see “directory” above)
calendar
M-x calendarview previous, current and next months
C-h mhelp
?user manual
C-fone day forward
C-bone day backward
7 C-fseven days forward
C-7 C-fsame as previous
C-none week forward
C-pone week backward
52 C-nfifty-two weeks forward
C-5 C-2 C-nsame as previous
M-}one month forward
M-{one month backward
12 M-}twelve months forward
M-1 M-2 M-}same as previous
C-x ]one year forward
C-x [one year backward
4 C-x ]four years forward
C-u C-x ]same as previous
C-abeginning of week
C-eend of week
M-abeginning of the month
M-eend of the month
M-<beginning of year
M->end of year
<scroll month backward
>scroll month forward
C-vscroll forward 3 months
M-vscroll backward 3 months
C-SPC 3 M-} M-=how many days three months from now
g d RET Feb RET 29 RETgo to February 29 of current year
o RET May RETgo to May
g D RET 60 RETgo to sixtieth day of current year
g w RET 5 RETgo to fifth week of current year
.back to today
p dprint day of year
p cprint week of year
hholidays on day
aholidays in next 3 months
xmark holidays
uunmark holidays
Ssunrise/sunset
Mlunar phases
mmark all diary entries (see “diary” later)
uunmark diary entries
ddiary entries for day
ddiary entries for day
i dinsert single diary entry
i winsert weekly entry
i minsert monthly entry
i yinsert annual entry
i ainsert anniversary
i c 10 RETrepeat entry every ten days
C-SPC C-f i bmaking a two-day diary entry
C-SPC C-n i bmaking a week-long diary entry
C-SPC 2 C-n i bmaking a two week-long diary entry
sopen diary
H mExport month to an HTML file
H yExport all months in year to HTML files
t mExport month to TeX file
t MExport month in landscape display to TeX file
t w 1Export week in to TeX file
t yExport year to TeX file
qquit
ediff
M-x ediffcompare two files
M-x ediff-bufferscompare two buffers
M-x ediff-regions-linewisecompare regions by lines in two buffers
M-x ediff-regions-wordwisecompare regions by word in two buffers
M-x ediff-backupcompare with backup file
M-x ediff-current-filecompare buffer with file
M-x ediff-revisioncompare in version control (see “version control” above)
?help
|toggle vertical and horizontal display
htoggle highlighting mode
nnext difference
SPCnext difference
pprevious difference
ause a
buse b
r aundo in a
r bundo in b
qquit
browse-url
M-x browse-urlsame as previous
M-x ffapsame as previous
M-x browse-url-at-pointvisit URL at point in Web browser
M-x browse-url RET RETsame as previous
HTML
C-h mhelp
C-c C-vview current file in Web browser
C-c C-stoggle to view in Web browser on each save
C-c 8toggle inserting of non-ASCII characters as entities
C-c TABtoggle invisibility of tags
M-x html-imenu-indexadd index menu to menu bar for current file
M-x set-variable RET sgml-xml-mode RET t RETturn on XHTML tags
M-x set-variable RET skeleton-transformation RET upcase RETuse upperacase tags
C-c C-ddelete current tag
C-c DELdelete current tag
C-u C-c C-ddelete next 4 tags
C-c C-fskip forward tag
C-u 5 C-c C-fskip forward 5 tags
C-c C-fskip backward tag
C-u C-c C-fskip backward 4 tags
C-c C-t html RET <TITLE> RETstart file with TITLE
M-x auto-insert RET <TITLE> RETsame as previous
C-c 1insert level one heading
C-c 2insert level two heading
C-c 3insert level three heading
C-c 4insert level four heading
C-c 5insert level five heading
C-c 6insert level six heading
C-c RETinsert paragraph tag
C-c /close paragraph tag
C-c C-jinsert line break tag
C-c C-c -insert horizontal rule
C-c C-c hinsert link
C-c C-c ninsert page anchor
C-c C-c iinsert image
C-c C-c rinsert radio buttons
C-c C-c oinsert ordered list
C-c C-c uinsert unordered list
C-c C-c iinsert list item
C-c /close list item
C-u M-o binsert bold tag
C-u M-o iinsert italic tag
C-u M-o binsert bold tag
C-u M-o iinsert underline tag
C-c C-ainsert attributes to current tag
C-c C-t em RETinsert emphasis tag
C-c C-t strong RETinsert strong emphasis tag
C-c C-t code RETinsert source code tag
C-c C-t dfn RETinsert definition tag
C-c C-t kbd RETinsert keyboard text tag
C-c C-t samp RETinsert sample text tag
C-c C-t var RETinsert variable text tag
C-c C-t pre RETinsert preformatted text tag
C-c C-t span RET class RET <CLASS> RETinsert span tag for text of CLASS
C-c C-t dl RET <TERM> RET RETinsert definition list with TERM
C-c C-t table RET h RET d RET DEL RETinsert 1-by-1 table
C-c C-tprompt for tag name and possible attributes, then insert
C-u 3 C-c C-tprompt for tag, and surround next 3 words with tag
C-1 C-c C-tprompt for tag, and surround next word with tag
M-- C-c C-tprompt for tag, and surround region with tag
C-c ? RETdescribe current tag
C-c C-n M-SPCinsert non-breaking space entity
C-c C-n &insert a quoted ampersand
C-c C-n <insert a quoted less than character
C-c C-n >insert a quoted greater than character
M-;insert comment
C-u M-;kill comment
M-x sgml-show-contextdisplay hierarchy of tags for point
M-x sgml-validatecheck markup with external tool
outline
M-x outline-modeset major mode
M-x outline-minor-modeset minor mode
C-h f outline-modehelp
C-c RETinsert heading of current level
C-c C-ashow all
C-c C-thide all
C-c C-eshow body
C-c C-chide body
C-c C-sshow all under current heading
C-c C-dhide all under current heading
C-c C-ishow headings under current heading
C-c TABsame as previous
C-c C-kshow all headings under current heading
C-c C-qhide all headings under current heading
C-c C-lhide leaves
C-c C-ohide all others except current
C-c C-nforward heading
C-c C-pbackward heading
C-u C-c C-nforward 4 headings
C-c C-fforward to same level heading
C-c C-bbackward to same level heading
C-u C-c C-fforward 4 headings at same level
C-c C-uup to parent heading
C-u 4 C-c C-uup 4 parent headings
C-c C-vmove current subtree down
C-c C-^move current subtree up
C-c @mark current subtree
C-c C-<increase heading level in current subtree
C-c C->decrease heading level in current subtree
SQL
M-x sql-helphelp
M-x sql-db2open DB2 interactive buffer
M-x sql-informixopen Informix interactive buffer
M-x sql-ingresopen Ingres interactive buffer
M-x sql-interbaseopen InterBase interactive buffer
M-x sql-linteropen RELEX Linter interactive buffer
M-x sql-msopen Microsoft SQL interactive buffer
M-x sql-mysqlopen MySQL interactive buffer
M-x sql-oracleopen Oracle interactive buffer
M-x sql-postgresopen PostgreSQL interactive buffer
M-x sql-solidopen SOLID interactive buffer
M-x sql-sqliteopen SQLite interactive buffer
M-x sql-sybaseopen Sybase interactive buffer
M-x sql-product-interactiveswitch to current interactive
M-x sql-modeturn on SQL mode if not already started
M-x sql-set-sqli-buffer RET *SQL* RETset text buffer’s interactive buffer
C-c C-rsend region to interactive buffer
C-c C-csend paragraph to interactive buffer
C-c C-bsend buffer contents to interactive buffer
calc
C-x * cstart/stop calc
M-x calcsame as previous
qquit
C-x * *start/stop
C-x * oother window
h ?help for help
? ?help shown in minibuffer
h hall help shown in buffer
h ttutorial
h iinfo manual
h ccommand name
h kcommand description
h scommand summary
RETput on stack
SPCsame as previous
TABswap top stack items
M-TABcycle all stack items
C-M-isame as previous
C-[ C-isame as previous
DELdelete from stack
M-0 DELdelete all from stack
omove point to top of the stack
>scroll right
<scroll left
+add
-subtract
*multiply
/divide
\integer divide
^raise number to power
I ^root
Qsquare root
nnegative
&reciprocal
'enter algebraic expression
=re-evaluate
m ffraction mode
m fchange back to floating point decimal
' 2 : 3 RETenter two-thirds (2/3) as a fraction
' 2 / 3 = > RETdivide 3 from 2 as an “evaluate-to”
' evalto ( 2 / 3 RETsame as previous
m f =show 2/3 as a fraction
m f =show 2/3 as a decimal
fconvert an integer to a float
Ffloor a float to an integer
Rround a float to the closest integer
xexecute calc named command
3 4 RET x hypotfind hypotenuse of two sides
' hypot(3,4)find hypotenuse of two sides
3 4 f hfind hypotenuse of two sides
'algebraic variable or expression
' $previous stack entry
' $$second previous stack entry
' $3third previous stack entry
s s <VAR>store top of stack to VAR
s t <VAR>store top of stack to VAR and delete
s r <VAR>recall VAR to stack
s u <VAR>unstore VAR to stack
s l <VAR>store top of stack to VAR, evaluate stack, and unstore
s r TABsee list of current variables
=evaluate variables
t [first trail item
t ]last trail item
t nforward trail item
t pbackward trail item
t hcurrent trail item
t yyank item from trail to stack
t ivisit trail
t oleave trail
m atoggle algebra mode
d zleading zero notation
d nnormal notation
d sscientific notation
d sscientific notation
d eengineering notation
d f 3fix to 3 digits after floating point
M-3 d n3 significant digits and normal notation
M-3 d s3 significant digits in scientific notation
M-3 d e3 significant digits in engineering notation
d gtoggle grouping digits in sets of 3 with commas
M-5 d ggroup in sets of 5
M-- d ggroup floating point in sets of 3 with commas
M-- M-5 d ggroup floating point in sets of 5
H dchange display mode without updating stack
H d SPCmanually refresh stack with current display mode
2#enter in binary
8#enter in octal
16#enter in hexadecimal
10#enter in decimal
d rchange display radix
d r 2display in binary
d 2same as previous
d r 8display in octal
d 8same as previous
d r 16display in hexadecimal
d 6same as previous
d r 10display in decimal
d 0same as previous
pchange precision
m rchange to radians mode
m dchange to degrees mode
m pchange to polar mode
m hchange to hours, minutes, and seconds mode
40@11'15"enter 40 degrees, 11 minutes and 15 seconds
Ssine
Ccosine
Ttangent
c rconvert radians
c dconvert degrees
c pconvert polar
c hconvert hms
' 1 m1 meter
' 1 cm1 centimeter
' 1 mm1 millimeter
' 1 mi1 mile
u cconvert units
' 26.2 SPC mi RET u c km RETconvert 26.2 miles to kilometers
' 90 SPC km/hr RET u c mph RET90 km per hour to miles per hour
' 72 SPC degF RET u c degC RET72 degrees Fahrenheit to Celsius
' hms(26.2) mi RET ' 2@3'38" hr RET /speed of 26.2 miles in 2:03:38
' 2@3'38" hr RET ' 26.2 mi RET /pace of 26.2 miles in 2:03:38
' hms(26.2) mi RET ' 2@3'38" hr RET / & u r c hsame as previous
u vview available units
' 14 SPC lb RET u d st RET Stone (mass) RETdefine unit
u psave units permanently to ~/.emacs.d/calc.el
timeclock
M-x timeclock-instart a project
M-x timeclock-outstop working on the current project
M-x timeclock-when-to-leave-stringreport time to leave
M-x timeclock-visit-timelogvisit timelog file
M-x timeclock-reread-logreread timelog file after crash
M-x timeclock-reread-logreread timelog file after edited
M-x timeclock-reread-logreread timelog file after restarting emacs
games
M-x 5x5fill a 5-by-5 grid
M-x blackboxfind balls in a box
M-x doctorpsychoanalysis
M-x dunnettext adventure
M-x gomokutry to get 5 in a row
M-x mpuzmultiplication puzzle
M-x pongclassic video tennis
M-x snakeeat dots but not yourself or the walls
M-x tetrisstack blocks
M-x type-breakwatch an animation
M-x type-break-modebe told when to take breaks
M-- M-x type-break-modeshut off reminders for breaks
animation
M-x animate-birthday-present RET <NAME> RETbirthday wishes to NAME
M-x butterflystrike the drive platter and flip the desired bit
M-x dissociated-pressscramble current text in another buffer
M-x hanoitowers of hanoi
M-x lifethe game of life
M-x studlify-buffergive text in buffer strange capitalization
M-x studlify-regiongive text in region strange capitalization
M-x zonedisplay text tricks

Reference Sheet by Aaron Hawley source


CategoryReferenceSheet