Essential Emacs Terminology * buffer: basic editing unit; some visible, some not * window: a partial view on a buffer * point: the position of the cursor * mark: a specified position in a buffer * region: text between point and mark * kill: remove some text and put it into yank ring * yank: recover some text from the yank ring * fill: arrange text in rows of some length * mode: a certain behavior inside a buffer * C-x: the CONTROL key depressed together with the x key * M-x: the META key depressed together with x (sometimes M=ALT) * ESC: The escape key; depressing it METAFIES next character * SPC: space key Essential keys C-@ Set Mark (like C-SPC) |C-x 0 Delete this window C-a Beginning of line |C-x 1 Maximize this window M-a Beginning of sentence |C-x 2 Split window vertically C-b Back one char |C-x 3 Split window horizontally M-b Backward word |C-x = Position info M-x shell Run shell |C-x b Select buffer by name C-d Delete one char |C-x C-b List all buffers M-d Delete word |C-x C-c Exit DEL Delete previous character |C-x C-f Find a file and edit it M-DEL Delete previous word |C-x C-w Write in file C-e End of line |C-x d Directory editor (file manager) M-e End of sentence |C-x k Kill buffer C-f Forward one char |C-x o Move to other window M-f Forward word |C-x s Save all buffers C-g Abort current command (beep) |C-x u Undo C-h i Info help system |C-y Yank last killed text C-k Kill line |C-z Stop emacs M-k Kill sentence |M-/ Fill word automatically C-l Refresh |M-- Same as C-u -1 C-n Next line |M-c Capitalize word C-p Previous line |M-h Make this paragraph region C-r Incremental search backward |M-l Lowercase word C-s Incremental search forward |M-q Fill paragraph C-SPC Set mark |M-SPC Delete space around point C-t Transpose characters |M-TAB Complete symbol M-t Transpose words |M-u Uppercase word C-u Numeric argument follows |M-x Type command by name C-v Page down |M-y Recover earlier kills M-v Page up |M-< Beginning of buffer C-w Kill region |M-> End of buffer M-w Copy region in kill ring |C-x ( Begin recording keyboard macro C-x n n Narrow buffer to region |C-x ) End recording keyboard macro C-x n w Widen buffer from region |C-x e Execute keyboard macro C-x h Make whole buffer region |C-M-\ Indent region M-. Find tag symbol |M-! Execute shell command Important major modes (invoked with M-x -mode) Fundamental (emacs initial mode) Text writing English text C/C++ writing C/C++ code RMAIL reading mail Mail sending mail Dired managing files GNUS reading news picture drawing ASCII paintings tex tex text composing latex latex composing bibtex Bibliography handling ML ml editing lisp lisp editing Other useful features * you can type ANY command by name (M-x command-name) * has commands to work with rectangles of text (M-x string-rectangle/yank-rectangle/kill-rectangle) * has interface to shell (M-x shell) * has interface to compilers (M-x compile) * has interface to debuggers (M-x gdb) * can interface man (M-x man) * can interface grep (M-x grep) * can interface spell-checking (M-x ispell) * may do transparent ftp (in dired mode type /user@machine:/file/path) * can do regular expression based search and replace (M-x replace-regexp) * handles automatically version control (RCS, VC, SCCS) * handles symbol tables for editing multiple source files (TAGS) * has interactive tutorial (C-h t) * can be customized at many levels * it runs on hundreds of platforms * the key sequences are used by many other programs (e.g. csh, bash, netscape) * IT IS ABSOLUTELY FREE SOFTWARE