X-Git-Url: https://code.delx.au/dotemacs/blobdiff_plain/c02c1880bcf576babdf75766ad9ad0cd76342bd4..9715cdd6761717a7465f809b8a6e0218cceaa66e:/README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..ec292e3 --- /dev/null +++ b/README.md @@ -0,0 +1,199 @@ +# References +https://www.gnu.org/software/emacs/refcards/pdf/refcard.pdf +https://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html + +# General commands +C-x C-c Quit Emacs +C-u C-x C-c Save and quit +C-g Cancel command +C-/ Undo +C-g C-/ Undo undo +C-x z Repeat last command +M-x Execute command +M-: Evaluate expression as elisp +M-x eval-buffer Load current buffer as elisp +C-x C-0 Reset font to standard +C-x C-+/= Increase font size +C-x C-- Decrease font size + +# Help +C-h C-h Help +C-h k Help about key binding +C-h v Describe variable +C-h f Describe function +C-h m Documentation on active modes + +# Search +C-s Search forward (ivy/swiper mode) +C-r Resume ivy search +M-s . Search for symbol around point +C-s Find next item (while searching) +Backspace Previous search (while searching) +M-% Search and replace +M-x linum-mode Display line numbers + +# Files/buffers +C-x C-s Save current buffer +C-x s Save some buffers +C-x C-w Write buffer to file +C-x C-f Find file +C-x f Find file +C-c f Find files in git repository +C-c g Grep in git repository +M-x find-file-at-point Find (open) filename at point +M-x browse-url-at-point Browse URL at point +C-x k Kill buffer +C-x C-k Kill all buffers that are not visible +C-x b Select named buffer +C-x C-b Show all buffers +C-x C-r Show recent files +M-x scratch-buffer Create new scratch buffer + +# Windows/frames +C-x o Switch to other window +C-x 0 Delete window +C-x 1 Switch to single window +C-x 2 Split vertically +C-x 3 Split horizontally +C-x - Shrink window +C-x + Make windows the same height +C-x ^ Make window taller +C-Up / C-Down / C-Left / C-Right Switch windows +M-x make-frame New frame (X11 window) + +# Movement +M-m Jump back to start of indentation +M-r Jump to window top/bottom/middle +M-g M-g Jump to line +M-g Tab Jump to column +M-g j Jump to character +C-a Beginning of line +C-e End of line +C-p Back one line +C-n Forward one line +C-b Back one character +C-n Forward one character +M-b Back a word +M-f Forward a word +M-a Backward sentence +M-e Forward sentence +M-v Back page +C-v Forward page +M-{ Back one paragraph +M-} Forward one paragraph +M-< Top of file +M-> End of file +C-M-p Back to start of balanced expression +C-M-n Forward to end of balanced expression +C-M-b Back one s-expression / symbol +C-M-f Forward one s-expression / symbol +C-M-u Move up one level of parentheses + +# Text formatting +M-/ Auto-complete +M-; Comment line or region +M-i Change inner region +M-q Reformat paragraph +M-l Lower case word +M-u Upper case word +M-c Capitalise word +C-x C-l Lower case region +C-x C-u Upper case region +C-o Insert a new line above point +M-o Insert a new line below point +C-j Newline and maybe indent +M-^ Join to previous line +M-j New line with comment +C-q Quoted insert + +# Marking +C-Space Set mark (start selection) +C-Space C-Space Set mark to point +C-u C-space Return to mark +C-x C-x Exchange point and mark +C-M-h Highlight expression +M-@ Set mark at end of next word +C-= Expand region +C-c l Insert extra cursor on all lines in region +C-c m Ask to insert extra cursor at locations matching selected region +M-= Display info about region + +# Killing and deleting +C-M-k Kill s-expression / symbol +C-w Kill from mark to point +C-y Yank text (paste) +M-y Scroll through kill ring (paste buffer) +M-_ Select current line +M-z Kill until +C-k Kill to end of line +M-0 C-k Kill to beginning of line +C-a C-k C-k Kill current line +C-S-Backspace Kill current line +C-d Delete next character +M-d Delete next word +M-Backspace Delete previous word +M-Space Collpase to one space around point +M-\ Delete spaces around point +C-x C-o Collapse blank lines +M-x delete-trailing-whitespace Delete trailing whitespace + +# Transposing +C-t Transpose chars +M-t Transpose words +C-x C-t Transpose lines +C-M-t Transpose s-expressions + +# Rectangle +C-x Space Toggle mark rectangle mode +C-x r t Replace rectangle with string + +# Macros +F3 , F4 Start recording macro, finish recording macro +C-u F3 Play last macro then append keys +F4 Play back macro + +# Mode switching +C-x C-j Open dired at current file +F8 Toggle flyspell-mode +F9 Toggle whitespace mode +F10 Toggle word wrap +M-x eshell Run eshell +M-x ielm Run Emacs Lisp REPL +M-x shell Run bash shell +M-x slime Run Common Lisp REPL +M-x smerge-mode Resolve merge conflicts +M-x restclient Open HTTP client +M-x yas-reload-all Reload all snippets + +# Lisp +C-M-x Eval top-level form +C-c C-z Switch to REPL +C-c C-c Compile and load the top-level form at point +C-c M-k Compile (but not load) the current buffer's file + +# Shell +M-! Execute command +M-& Execute command asynchronously +M-| Execute with region +C-u M-| Filter with region + +# Smerge mode +C-c ^ p Go to previous hunk +C-c ^ n Go to next hunk +C-c ^ Return Keep current +C-c ^ a Keep all +C-c ^ m Keep mine +C-c ^ o Keep other + +# Flyspell +M-$ Correct word +C-M-i Automatically correct word +C-; Automatically correct last word + Popup word correction + +# Flycheck +C-c ! v Verify setup +C-c ! n Next error +C-c ! p Previous error +C-c ! l List errors +C-c ! x Disable checker