NOTE: This is an optional bonus section. You do not need to read it, but if you're interested in digging deeper, this is for you.
Module 1: Getting Started (Days 1-2)
Day 1: First Contact with VIM
Segment 1: The Basics
- Complete first section of
vimtutor
- Learn essential commands:
vim filename
- Open/create filei
- Enter insert modeEsc
- Return to normal mode:w
- Save changes:q
- Quit:wq
orZZ
- Save and quit:q!
- Quit without saving
Segment 2: Building Muscle Memory
- Create five different files
- Practice mode switching 50 times
- Write and save content in each file
- Practice recovering from common mistakes:
- Accidentally pressed keys in normal mode
- Forgot to enter insert mode
- Trying to quit without saving
Segment 3: First Real Task
- Create a simple bash script template
- Add standard sections:
- Shebang line
- Comments
- Basic variables
- Simple functions
- Save and reopen multiple times
Day 2: Comfort Zone
Segment 1: More Basic Operations
- Complete second section of
vimtutor
- Practice quick save and exit combinations
- Learn to read VIM messages and errors
- Understand modes in depth:
- Normal mode
- Insert mode
- Visual mode (introduction)
Segment 2: Error Recovery
- Create deliberate errors and fix them:
- Write without insert mode
- Exit without saving needed changes
- Get stuck in different modes
- Practice until you can recover without thinking
Segment 3: Real Config Practice
- Copy
/etc/hosts
file - Make various modifications:
- Add new host entries
- Modify existing entries
- Add comments
- Save different versions
Module 2: Navigation (Days 3-4)
Day 3: Basic Movement
Segment 1: Core Movement Commands
- Master the basics:
h
- Leftj
- Downk
- Upl
- Rightw
- Next wordb
- Previous word0
- Line start$
- Line end
Segment 2: Movement Drills
- Create a "movement course" file
- Practice moving between marked points
- Time your navigation speed
- Compete against your previous times
Segment 3: Applied Navigation
- Navigate through
/etc/ssh/sshd_config
:- Find specific settings
- Move between sections
- Locate comments
- Jump to line numbers
Day 4: Advanced Movement
Segment 1: Extended Movement
- Learn efficient jumps:
gg
- File startG
- File end{
- Previous paragraph}
- Next paragraphCtrl+f
- Page downCtrl+b
- Page up
Segment 2: Speed Training
- Work with a large configuration file
- Practice jumping between sections
- Find specific lines quickly
- Navigate through code blocks
Segment 3: Real-world Navigation
- Work with system logs
- Jump between error messages
- Navigate through long configuration files
- Practice quick file browsing
Module 3: Essential Editing (Days 5-7)
Day 5: Basic Editing
Segment 1: Edit Commands
- Master core editing:
x
- Delete characterdd
- Delete lineyy
- Copy linep
- Paste afterP
- Paste beforeu
- UndoCtrl + r
- Redo
Segment 2: Editing Drills
- Create practice documents
- Delete and replace text
- Copy and paste sections
- Practice undo/redo chains
Segment 3: System File Editing
- Work with
/etc/fstab
copy:- Add mount points
- Remove entries
- Comment lines
- Fix formatting
Day 6: Intermediate Editing
Segment 1: Combined Commands
- Learn efficient combinations:
dw
- Delete wordd$
- Delete to line endd0
- Delete to line startcc
- Change whole linecw
- Change word
Segment 2: Practical Application
- Edit service configuration files
- Modify system settings
- Update network configurations
- Clean up log files
Segment 3: Speed Challenges
- Timed editing tasks
- Configuration file cleanup
- Quick text transformation
- Error correction sprints
Day 7: Editing Mastery
Segment 1: Advanced Operations
- Master text objects:
ciw
- Change inner wordci"
- Change inside quotesdi(
- Delete inside parenthesesyi{
- Yank inside braces
Segment 2: Integration Practice
- Combine all learned commands
- Work with multiple files
- Practice common scenarios
- Time your operations
Daily Success Metrics
By end of each day, you should be able to:
- Day 1: Open, edit, save, and exit files confidently
- Day 2: Understand and recover from common errors
- Day 3: Navigate small files without arrow keys
- Day 4: Move through large files efficiently
- Day 5: Perform basic edits without hesitation
- Day 6: Combine movement and editing commands
- Day 7: Edit configuration files with confidence
Practice Tips
- Use
vimtutor
during breaks - Disable arrow keys completely
- Keep a command log of new discoveries
- Time your editing operations
- Practice with real system files (copies)
Remember: Focus on accuracy first, then build speed.