- Escape makes you feel safe
- Modal Editor
- Help docs
- Basic movements
- Hjkl
- Basic Edits
- `x`
- This one seems so useless... you really don’t need this one that often
(and I only recently started using it really at atll...) I think it’d be
way more useful to start with showing how to get back into insert mode and
where you’re used to. Why would you start here instead of `i`?
- `A`
- This also seems weird, why not introduce the concept of i, a. Then move to I and A?
## Auxiliary Materials
- Course Marketing Video
- Short Outro Video
- Why Vim?
- History of Vim
- (Required)
- Explain how we get here with Vim.
- Can be referenced after we explain what some of the modes
and other super basics
- Of course, in this video, we have to say that this is part
of my vim course :)
- PDE talk (hopefully will be done before this course)
## Themes
- Interesing Question: Minimum to feel comfortable in vim
- might not be productive
- might not be fast
- (can it replace nano for you?)
## Rough Outline
### Episode 1: How to Exit Vim?
Joke: Most courses don't start off with teaching
you how to quit the thing you're learning... but
that's just the innovative style you get with me :)
- Modes
- Normal Mode
- hjkl
- Command Mode
- Character Notation <C-c>, <Enter>, etc
- `:q<Enter>` (`:q!`)
- `!` = `bang`
- `:help :q`
- Vim mindset: Desire to keep on learning it, otherwise I think it's kind of useless
- Don't google (or bing it).
- Go to help first, and read.
- Go to help often, and read.
- People often ask me: "How did you learn vim"
- My serious answer is: "I asked myself questions and I read the help"
- `:w`
- Insert Mode
- You can enter insert mode with `i`
- Ways to enter Insert Mode
- `i` / `a`
- Think of `<shift>` as a modifier (not as same key)
- `I` / `A`
- Basic Motions
- hjkl
- f/t
- `e`, `w`, `b`
- cover `<shifted>` as well
- `<shift>` as modifier
- `g` as modifier
- `<ctrl>` as modifier
- `/`
### Episode 2: Vim Philosophy
- Open new lesson with vim rants
- Help Files
- Motions & operators
- what is a motion?
- what is an operator?
- `:help operator`
- Such a cool operator is `!` (using vim to combine with other things is exciting!)
- Such an interesting operator is `g?`
- count operator && operator count
- `gq`, `=`, and other formatting related operators
- Jumplist, Changelist, Tagstack
- Jumplist: Larger movements
- Changelist: examples,
- Undo:
- `u`, `U`
- Tagstack: tags?
- not sure if we should do tags... not my recommended use case anymore
- same thing you type in command mode is the thing that you run in your .vimrc
- so... if you have stuff you want to run there, just put it there
- so... if you want to write a function that does something, you can do that...
- (vimscript)
(other stuff)
- You can edit and do your daily work in vim w/ no plugins
- Impossible on large projects and really sucky (because LSP is amazing)
but, I want that to be in the realm of possibility