Slide 1

Slide 1 text

stuck in vim :help! => E478: Don't panic!

Slide 2

Slide 2 text

Disclaimers ● Vim's just a text editor. Don't wanna get caught up in "text editor wars" ● High initial learning curve ● Everyone's vim journey is different

Slide 3

Slide 3 text

Why Vim?

Slide 4

Slide 4 text

Demo

Slide 5

Slide 5 text

Toolbox ● Everything within reach ● command line is my Integrated Dev Environment ● vim mode on command line

Slide 6

Slide 6 text

Toolbox Example: API call from your text editor :read !curl -s "https://en.wikipedia.org/w/api.php?action=query&titl es=Frida_Kahlo&prop=pageimages&format=json&pithumbsiz e=500"

Slide 7

Slide 7 text

Economy of Movement

Slide 8

Slide 8 text

Example: Aliases! pry open ~/.vimrc create two new aliases

Slide 9

Slide 9 text

Home row a - append s - substitute d - delete action f - find next character g(g), G - go to top or bottom of file

Slide 10

Slide 10 text

Home row (continued) h - left j - up k - down l - right vim maze.txt

Slide 11

Slide 11 text

Muscle memory

Slide 12

Slide 12 text

Example: Mnemonics! ciw - change inner word ci" - change in quotes d$ - delete until end of line cs"' - change surrounding " to ' d} - delete until end of block

Slide 13

Slide 13 text

Example: Search and replace open test replace a frequent word with something else Find keys in json blob: \("\w\+":\) Delete keys in json blob: %s/\("\w\+":\)//g Delete values in json blob %s/\("\w\+":\).*$/\1/g Advanced Regex

Slide 14

Slide 14 text

It's everywhere! macOS, BSD, Linux, Windows, and more

Slide 15

Slide 15 text

How to get started! - vimtutor - use vim all the time! - vim mode on Atom / Sublime / VSCode - watch other vim users (YouTube, shoulder surfing) - look at .vimrc