Slide 1

Slide 1 text

Emacs

Slide 2

Slide 2 text

emacs-live

Slide 3

Slide 3 text

https://github.com/overtone/emacs-live

Slide 4

Slide 4 text

How to exit?

Slide 5

Slide 5 text

C-x C-c

Slide 6

Slide 6 text

Cursor movement

Slide 7

Slide 7 text

cursor movement C-f | forward one character C-b | backward one character C-n | forward one line C-p | backward one line

Slide 8

Slide 8 text

cursor movement C-a | beginning of line C-e | end of line ! Shift-Meta-> | end of file Shift-Meta-< | beginning of file

Slide 9

Slide 9 text

cursor movement C-a | beginning of line C-e | end of line ! Shift-Meta-> | end of file Shift-Meta-< | beginning of file ! C-SPACE | set/unset mark (selection)

Slide 10

Slide 10 text

cursor movement C-r | isearch-backward-regexp C-s | isearch-forward-regexp

Slide 11

Slide 11 text

Editing

Slide 12

Slide 12 text

editing C-w | kill (cut) M-w | copy C-y | paste C-k | kill until the end of the line

Slide 13

Slide 13 text

Finding out stuff

Slide 14

Slide 14 text

finding out stuff emacs -nw --debug-init ! describe-key describe-function

Slide 15

Slide 15 text

File navigation

Slide 16

Slide 16 text

file navigation C-x C-f | open file C-x C-s | save file C-x C-b | list buffers C-x b | switch to buffer

Slide 17

Slide 17 text

file navigation C-x 2 | split vertically C-x 3 | split horizontally

Slide 18

Slide 18 text

buffer-move mode

Slide 19

Slide 19 text

buffer-move Move buffers up/down/left right

Slide 20

Slide 20 text

buffer-move C-c w r | rotate-windows C-c w p | buf-move-up C-c w n | buf-move-down C-c w b | buf-move-left C-c w f | buf-move-right

Slide 21

Slide 21 text

winner-mode Undo window changes: C-c b | winner-undo

Slide 22

Slide 22 text

ace-jump C-c SPC | ace-jump-word-mode C-u C-c SPC | ace-jump-char-mode C-u C-u C-c SPC | ace-jump-line- mode

Slide 23

Slide 23 text

yasnippet

Slide 24

Slide 24 text

yasnippet YASnippet is a template system for Emacs. It allows you to type an abbreviation and automatically expand it into function templates. ! Saves you some typing by providing expandable shortcuts for common functions / patterns. !

Slide 25

Slide 25 text

undo-tree-visualise

Slide 26

Slide 26 text

expand-region

Slide 27

Slide 27 text

expand-region (global-unset-key (kbd "C-c C-w"))! (global-set-key (kbd "C-c C-w") 'er/expand-region)! ! Expand region increases the selected region by semantic units. Just keep pressing the key until it selects what you want. !

Slide 28

Slide 28 text

multiple-cursors

Slide 29

Slide 29 text

multiple-cursors Multiple cursors for Emacs. ! http://emacsrocks.com/e13.html

Slide 30

Slide 30 text

textmate-mode

Slide 31

Slide 31 text

textmate-mode Basic emulation of Textmate features textmate-goto-file textmate-goto-symbol goto-line textmate-shift-left textmate-shift-right comment-or-uncomment-region-or- line

Slide 32

Slide 32 text

clojure

Slide 33

Slide 33 text

clojure Cider function signature lookup cider-jack-in C-c C-k | compile C-c M-n | load current ns C-c C-. | run tests in file M-. | jump to def align-cljlet

Slide 34

Slide 34 text

clojure C-c C-p | eval the form preceding point C-c C-b | interrupt C-c M-m | macroexpand-all C-c C-n | Eval the ns form

Slide 35

Slide 35 text

haskell

Slide 36

Slide 36 text

haskell C-c C-c | compile

Slide 37

Slide 37 text

magit

Slide 38

Slide 38 text

magit M-x magit-status s | stage u | unstage 1/2/3/r | show more details c c | commit

Slide 39

Slide 39 text

magit M-x magit-log ENTER | view commit ! M-x magit-blame-mode ENTER | view commit ! M-x magit-pull M-x magit-push M-x magit-show

Slide 40

Slide 40 text

deft

Slide 41

Slide 41 text

deft Deft is an Emacs mode for quickly browsing, filtering, and editing directories of plain text notes.

Slide 42

Slide 42 text

org-mode

Slide 43

Slide 43 text

org-mode C-on | add note C-c . | add date C-u C-c . | add time and date ! C-c C-c | add tag C-c C-t | Rotate the TODO state C-c a t | org-todo-list

Slide 44

Slide 44 text

defining your own key bindings

Slide 45

Slide 45 text

adding a new pack

Slide 46

Slide 46 text

@ifesdjeen