gnu emacs manual -> http://tonic.physics.sunysb.edu/docs/emacs/emacs.html General Control Commands: to have 1/2/2-vertical windows C-x 1/2/3 to switch windows C-x o to open a file C-x C-f to get help on a certain key binding C-h k to get a shell M-x shell Ret .. to have bash-like command recall use M- to scroll up/down through old commands to execute a command ! Editing: C-_ undo (repeatable) C-x h mark/select the entire file C-x C-o on a blank line, delete all surrounding blank lines, leave just one C- to make a mark C-w to cut to the mark M-w to copy to the mark (into the killring) C-y to yank form your killring (M-y to cycle through old buffers after the first one) M-^ join this line with one above Searching/Replacing: search forward C-s search backward C-r regex search forward M-C-s regex search backward M-C-r search & replace M-% search & replace (regexp) C-M-% to search/replace a control character M-% ^Q <^char> RET Moving around: C-a beginning of line C-e end of line C-f forward one letter C-b backward one letter M-f forward one word M-b back one word C-n down one line C-p up one line Shift-M > end of file Shift-M < beginning of file M-x goto-line C-x r m set a bookmark C-s r b jump to a bookmark Useful functions: M-x comment-region M-x uncomment-region M-x find-tag # to jump to a file w/o the directory tree Modes: to change your editing mode -> M-x jde-mode (ie: java mode) Buffers: C-x C-b show buffers C-x b go to last buffer C-x k kill buffer Tags: Building a TAGS file -> ctags --recurse=yes -e --java-types=ci --kind-long=yes --totals=yes M-. to follow a tag M-/ to complete your current expression Syntax help: C-m \ indent a marked region Configuring .emacs: to evaluate the current buffer: M-x eval-buffer (doesn't unset old values) turn on line-wrap -> (setq truncate-partial-width-windows nil) ; never exit through keystrokes. (global-set-key "\C-X\C-C" 'nil) (global-set-key [C-XC-C] 'nil) to get the alt key to work as meta, under x -> xmodmap -e "keysym Multi_key = Multi_key Meta_L"