Overview
Vim is a terminal-based text editor specially tailored to programming. It is best known for its unique keyboard shortcuts and editing style.
There are generally two choices when it comes to terminal-based text editors. You are free to choose whatever text editor you prefer, but because the course staff uses Vim exclusively and teaching two text editors is counter-productive, this course will focus only on Vim.
Lessons
-
Vim as Language
-
Editing & Navigation
-
Searching, Substituting, Text Objects, and Yanking
-
Tabs, Jumps, & the Clipboard
Resources
Essential Reads
vimtutor- Command line program that teaches you Vim interactively
- Learning Vim in 2014
- An excellent collection of articles that outline how to get the most out of learning Vim.
- The Basics
- Introduction of Vim's history, and suggestions for how to approach learning Vim
- Vim as Language
- Teaches Vim as a language, a crucial paradigm to understand when learning Vim
One-a-day tips
- Learn Vim Progressively
- Good at outlining small sets of commands that you can learn to incorporate into your workflow incrementally
- Vim Cheatsheet
- Quick reference
Interesting, non-essential reads
- Your problem with Vim is that you don't grok vi
- Famous StackOverflow post explaining how to use Vim as a language
Reference and Next Level Vim usage
- Learn Vimscript the Hard Way
- Very comprehensive look at Vim, from using it as en editor to adding plugins, to writing plugins yourself.