Humour« an older post

Emacs key bindings

Book page

From: http://www.pdc.kth.se/training/Tutor/Basics/emacs/emacsis.great

--------------------------------------------------------------------
                      Summary of Emacs Commands
 
Starting emacs:
        start up only                       emacs
        start up with a file                emacs filename
 
Leaving emacs:
        suspend Emacs                       C-z
        exit Emacs permanently              C-x C-c
 
Files:
        read a file into Emacs              C-x C-f
        save a file back to disk            C-x C-s
        insert a file into this buffer      C-x i
        replace this file with another      C-x C-v
        write buffer to a specified file    C-x C-w
        run the directory editor            C-x d
 
Getting help:
        starting HELP                       C-h
        get rid of HELP window              C-x 1
        scroll HELP window                  ESC C-v
        apropos                             C-h a
        show function a key runs            C-h c
        describe a function                 C-h f
        get mode-specific information       C-h m
 
Error Recovery:
        abort partially typed command       C-g
        recover file lost by system crash   M-x recover-file
        undo an unwanted change             C-x u  or  C-_
        restore buffer to original          M-x revert-buffer
        redraw garbaged screen              C-l
 
Incremental Search:
        search forward                      C-s
        search backward                     C-r
        regular expression search           C-M-s
        exit incremental search             ESC
        undo effect of last character       DEL
        abort current search                C-g
 
Motion:
      entity to move over                  backward            forward
        character                           C-b                 C-f
        word                                M-b                 M-f
        line                                C-p                 C-n
        go to line beginning/end            C-a                 C-e
        sentence                            M-a                 M-e
        paragraph                           M-[                 M-]
        page                                C-x [               C-x ]
        sexp                                C-M-b               C-M-f
        function                            C-M-a               C-M-e
        go to buffer beginning/end          M-
 
 
        scroll to next screen                      C-v
        scroll to previous screen                  M-v
        scroll left                                C-x 
 
Killing and Deleting:
      entity to kill                       backward            forward
        character(delete, not kill)         DEL                 C-d
        word                                M-DEL               M-d
        line(to end of)                     M-O C-k             C-k
        sentence                            C-x DEL             M-k
        sexp                                M-- C-M-k           C-M-k
 
        kill region                                C-w
        kill to next occurrence of char            M-z char
        yank back last thing killed                C-y
        replace last yank with previous kill       M-y
 
Marking:        
        set mark here                              C-@ or C-SPC
        exchange point and mark                    C-x C-x
        set mark arg words away                    M-@
        mark paragraph                             M-h
        mark page                                  C-x C-p
        mark sexp                                  C-M-@
        mark function                              C-M-h
        mark entire buffer                         C-x h
 
Query Replace:
        interactively replace a string             M-%
        using regular expressions                  M-x query-replace-regexp
 
        Valid responses in query-replace mode are
 
        replace this one, go on to next            SPC
        replace this one, don't move               ,
        skip to next without replacing             DEL
        replace all remaining matches              !
        back up to the previous match              ^
        exit query-replace                         ESC
        enter recursive edit(C-M-c to exit)        C-r
 
Multiple Windows:
        delete all other windows                   C-x 1
        delete this window                         C-x 0
        split window in 2 vertically               C-x 2
        split window in 2 horizontally             C-x 5
        scroll other window                        C-M v
        switch cursor to another window            C-x o
        shrink window shorter                      M-x shrink-window
        grow window taller                         C-x ^
        shrink window narrower                     C-x {
        grow window wider                          C-x }
        select a buffer in other window            C-x 4 b
        find file in other window                  C-x 4 f
        compose mail in other window               C-x 4 m
        run Dired in other window                  C-x 4 d
        find tag in other window                   C-x 4 .
 
Formatting:
        indent current line                        TAB
        indent region                              C-M-\
        indent sexp                                C-M-q
        indent region rigidly arg columns          C-x TAB
        insert newline after point                 C-o
        move rest of line vertically down          C-M-o
        delete blank lines around point            C-x C-o
        delete all white space around point        M-\
        put exactly one space at point             M-SPC
        fill paragraph                             M-q
        fill region                                M-g
        set fill column                            C-x f
        set prefix each line starts with           C-x .
 
Case Change:
        uppercase word                             M-u
        lowercase word                             M-l
        capitalize word                            M-c
        uppercase region                           C-x C-u
        lowercase region                           C-x C-l
        capitalize region                          M-x capitalize-region
 
The Minibuffer:
      The following keys are defined within the minibuffer.
        complete as much as possible               TAB
        complete up to one word                    SPC
        complete and execute                       RET
        show possible completeions                 ?
        abort command                              C-g
      Type C-x ESC to edit and repeat the last command that
      used the minibuffer.  The following keys are then
      defined.
        previous minibuffer command                M-p
        next minibuffer command                    M-n
 
Buffers:
        select another buffer                      C-x b
        list all buffers                           C-x C-b
        kill a buffer                              C-x k
 
Transposing:
        transpose characters                       C-t
        transpose words                            M-t
        transpose lines                            C-x C-t
        transpose sexps                            C-M-t
 
Spelling Check:
        check current word                         M-$
        check region                               M-x spell region
        check buffer                               M-x spell buffer
 
Tags:
        find tag                                   M-.
        find next occurrence of tag                C-u M-.
        specify a new tags file                    M-x visit-tags-table
        regexp search on all files in tags table   M-x tags-search
        query replace on all the files             M-x tags-query-replace
        continue last tags search or query-replace M-,
 
Shells:
        execute a shell command                    M-!
        run a shell command on the region          M-|
        filter region through a shell command      C-u M-|
        start a shell in window *shell*            M-x shell
 
Rmail:
        scroll forward                             SPC
        scroll reverse                             DEL
        beginning of message                       . (dot)
        next non-deleted message                   n
        previous non-deleted message               p
        next message                               M-n
        previous message                           M-p
        delete message                             d
        delete message and back up                 C-d
        undelete message                           u
        reply to message                           r
        forward message to someone                 f
        send mail                                  m
        get newly arrived mail                     g
        quit Rmail                                 q
        output message to another Rmail file       o
        output message in Unix-mail style          C-o
        show summary of headers                    h
 
Regular Expressions:
      The following have special meaning inside a regular expression.
        any single character                       . (dot)
        zero or more repeats                       *
        one or more repeats                        +
        zero or one repeat                         ?
        any char in set                            [ ... ]
        any char not in set                        [^ ... ]
        beginning of line                          ^
        end of line                                $
        backslash                                  \\
        alternative ("or")                         \|
        grouping                                   \( ... \)
        nth group                                  \n
        beginning of buffer                        \`
        end of buffer                              \'
        word break                                 \b
        not beginning or end of word               \B
        beginning of word                          \
        any word-syntax char                       \w
        any non-word-syntax char                   \W
        char with syntax c                         \sc
        char with cyntax not c                     \Sc
 
Registers:
        copy region to register                    C-x x
        insert register contents                   C-x g
        save point in register                     C-x /
        move point to saved location               C-x j
 
Info:
        Enter the Info documentation reader        C-h i
        Moving within a node:
        scroll forward                             SPC
        scroll backward                            DEL
        beginning of node                          . (dot)
 
        Moving between nodes:
        next node                                  n
        previous node                              p
        move up                                    u
        select menu item by name                   m
        select nth menu item by number (1-5)       n
        follow cross reference (return with l)     f
        return to last node you saw                l
        return to directory node                   d
        go to any node by name                     g
 
        Other:
        run Info tutorial                          h
        list Info commands                         ?
        quit Info                                  q
        search nodes for regexp                    s
 
Keyboard Macros:
        start defining a keyboard macro            C-x (
        end keyboard macro definition              C-x )
        execute last-defined keyboard macro        C-x e
        append to last keyboard macro              C-u C-x
        name last keyboard macro                   M-xname-last-kbd-macro
        insert lisp definition in buffer           M-x insert-kbd-macro
 
Commands Dealing with Emacs Lisp:
        eval sexp before point                     C-x C-e
        eval current defun                         C-M-x
        eval region                                M-x eval-region
        eval entire buffer                         M-x eval-current-buffer
        read and eval minibuffer                   M-ESC
        re-execute last minibuffer command         C-x ESC
        read and eval Emacs Lisp file              M-x load-file
        load from standard system directory        M-x load-library
 
                                                 PJV 4/20/1990