|
|
||
|---|---|---|
| .. | ||
| README.md | ||
| week-01-motions.md | ||
README.md
🎓 Vim Mastery - Progressive Learning Path
Master Vim one technique at a time, building real skill over months instead of trying to learn everything at once.
🎯 Philosophy: The One-Trick-Per-Week Method
Instead of overwhelming yourself with hundreds of commands:
- Learn ONE new command/technique each week
- Practice it consciously in your daily work
- Use it until it becomes muscle memory
- Move to the next technique
After one year: 52 new powerful techniques!
🗺️ Learning Roadmap
Weeks 1-4: Foundation
Build essential motion and editing skills
- Week 1: Motion Basics - Move efficiently
- Week 2: Text Objects - Edit intelligently
- Week 3: Advanced Editing - Visual mode & macros intro
- Week 4: Macros & Registers - Automate repetitive tasks
Weeks 5-8: Power User
Master Vim's unique features
- Week 5: Command Line - Ex commands & substitution
- Week 6: Windows & Tabs - Workspace management
- Week 7: Search & Replace - Advanced patterns
- Week 8: Marks & Jumps - Navigate large codebases
Ongoing: Mastery
Continuous improvement
- Tips & Tricks - Productivity boosters
- Workflows - Real-world patterns
- Advanced Topics - Vim script, Lua, custom commands
📊 Skill Progression
Week 0: hjkl, basic editing [Beginner]
↓
Week 2: Word motions, text objects [Functional]
↓
Week 4: Visual mode, basic macros [Comfortable]
↓
Week 6: Ex commands, window management [Efficient]
↓
Week 8: Advanced searching, marks [Proficient]
↓
Month 3: Custom workflows [Advanced]
↓
Month 6: Vim expert, teaching others [Master]
🎯 Learning Objectives
By Week 4
You will be able to:
- Navigate code without arrow keys
- Edit text objects (change word, delete paragraph)
- Use visual mode for selections
- Record and replay simple macros
- Be MORE productive than with mouse + arrow keys
By Week 8
You will be able to:
- Refactor code efficiently
- Use advanced search patterns
- Manage multiple windows and tabs
- Navigate large codebases with marks
- Automate repetitive tasks with macros
By Month 6
You will be able to:
- Edit at the speed of thought
- Teach Vim to others
- Create custom workflows
- Write your own Vim scripts
- Never want to use another editor
📖 Weekly Structure
Each week follows this pattern:
Monday: Learn
- Read the week's guide (15 minutes)
- Watch any linked videos
- Understand the concepts
Tuesday-Friday: Practice
- Pick 2-3 commands from the week's list
- Use them consciously in real work
- Don't worry about speed yet
- Focus on correctness
Weekend: Review
- What did you learn?
- What felt natural?
- What needs more practice?
- Pick next week's focus
💡 Learning Tips
1. Deliberate Practice
Don't just read - use the commands in real code.
2. Start Slow
Speed comes with muscle memory. Focus on correctness first.
3. One Thing at a Time
Master one command before adding another.
4. Keep a Cheat Sheet
Write down your current week's commands somewhere visible.
5. Use the In-Editor Cheatsheet
<Leader>sc is your friend!
6. Don't Rush
It's okay to spend 2 weeks on one topic if needed.
7. Apply Immediately
Learn Monday, use in real work Tuesday.
8. Embrace Mistakes
Undo (u) is your safety net. Experiment!
🎮 Practice Exercises
Each week includes:
- Focused drills - Specific command practice
- Real-world scenarios - Apply to actual code
- Challenge tasks - Test your skills
- Cheat sheet - Quick reference
📚 Recommended Schedule
If You're New to Vim
- Pace: 1 week per topic
- Time: 30 minutes/day practice
- Duration: 8 weeks to proficiency
If You Know Basic Vim
- Pace: 2-3 topics per week
- Time: 15 minutes/day practice
- Duration: 4 weeks to level up
If You Want to Master Vim
- Pace: All topics + advanced
- Time: 1 hour/day practice
- Duration: 3-6 months to mastery
🗺️ Your Journey Starts Here
Absolute Beginner?
Start with Week 1: Motion Basics
Know hjkl Already?
Jump to Week 2: Text Objects
Comfortable with Vim?
Explore Tips & Tricks and Workflows
Want to Master Everything?
Follow the full 8-week program, then Advanced Topics
📈 Track Your Progress
Create a file to track what you've learned:
:e ~/vim-mastery-log.md
Template:
# My Vim Mastery Journey
## Week 1: Motion Basics
- Started: 2025-11-01
- Mastered: w, b, e, 0, $
- Still practicing: f/F, t/T
- Favorite new trick: dt, (delete till comma)
## Week 2: Text Objects
...
🎯 Success Metrics
You're making progress when:
- ✅ You reach for hjkl instead of arrow keys
- ✅ You think "change inner word" instead of selecting with mouse
- ✅ You prefer Vim commands over GUI operations
- ✅ You can edit without looking at keyboard
- ✅ You start teaching others
- ✅ You feel frustrated using non-Vim editors
💬 Community
Share your progress:
- Reddit: r/vim, r/neovim
- Discord: Neovim community server
- GitHub: Open issues with questions
📚 Additional Resources
Books
- Practical Vim by Drew Neil (highly recommended!)
- Modern Vim by Drew Neil
- Learning the Vi and Vim Editors
Videos
- ThePrimeagen's Vim Course
- Vim Casts (vimcasts.org)
- TJ DeVries' Neovim streams
Interactive
:Tutor- Built into Neovim- Vim Adventures - Learn through gaming
- OpenVim - Interactive tutorial
References
:help- Vim's excellent documentation- vim.rtorr.com - Quick reference
- This config's cheatsheet -
<Leader>sc
🎊 Ready to Begin?
Remember: Progress > Perfection
Every expert was once a beginner. The only difference is they kept practicing.
Your journey to Vim mastery starts now!