Modal editing, programmable workflows and the architecture of efficient text work
Introduction: The Grammar of Text Work
- The promise of this book
- Who this book is for
- How the book is organized
- What Vim is and is not
Chapter 1: Origins and Philosophy
- From ed to vi
- Bram Moolenaar and the 1991 fork
- The modal model explained
- Why modality works (for some people, most of the time)
- What carried over and what changed
Chapter 2: The Modal Mental Model
- The four main modes and their submodes
- Normal mode as a grammar
- Esc and mode discipline
- Where the model has real costs
Chapter 3: Navigation
- Basic motions and counts
- Word, paragraph and sentence motions
- Marks and the jump list
- File and screen navigation
- Search as navigation
Chapter 4: Operators, Text Objects, the Editing Grammar
- Operators as verbs
- Text objects as nouns
- Composition patterns that do real work
- The cost side: memorization versus fluency
Chapter 5: Registers, Yank, Put
- The register model
- Yank and put mechanics
- Numbered and black-hole registers
- Registers across files and buffers
- Real workflows
Chapter 6: Search, Replace, Regular Expressions
- Searching and navigation flags
- The substitute command
- Vim’s regex dialect
- Patterns for code
- Patterns for logs
- Pitfalls
Chapter 7: Repeat, Change, Macros
- Repeat and the dot
- Change and substitute in detail
- Recording and playing macros
- Macro pitfalls and debugging
- Repeating work across files
Chapter 8: Ex Mode and the Command Line
- Ex commands and normal-mode commands
- Ranges and addressing
- Powerful commands
- Ex mode as a scripting surface
- Editing huge files from the command line
Chapter 9: Buffers, Windows, Tabs, Sessions
- The buffer model
- Buffer management
- Windows and splits
- Tabs and sessions
- Practical multi-file layouts
Chapter 10: Undo, Recovery, Large Files
- The undo model
- Persistent undo
- Swap files and crash recovery
- Editing very large files
- Performance options that matter
Chapter 11: Vim 9 and Vim9script
- What Vim 9 brought
- vim9script basics
- Modern scripting idioms
- Jobs, channels and the terminal
- Adoption advice
Chapter 12: Configuration Architecture
- Where Vim looks for configuration
- Options and ‘compatible’
- Organizing a config
- Portability and minimal configs
- Keeping configs maintainable
Chapter 13: Mappings, Autocommands, User Commands, Functions
- Mappings and their traps
- Autocommands and events
- User commands
- Functions and script structure
Chapter 14: Plugins and Package Management
- The plugin problem, historically
- Native package management
- How a plugin is structured
- Load-time mechanics
- Managers: convenience vs risk
Chapter 15: Ecosystem Hygiene
- Evaluating a plugin
- Dependencies and pinning
- Updating and removal workflows
- Startup performance and profiling
- Portability and reproducibility
- Security considerations
Chapter 16: LSP and Modern Language Tooling
- LSP in one paragraph
- Vim’s LSP options today
- Setup and configuration patterns
- Diagnostics, completion, formatting
- An honest assessment
Chapter 17: Git, Diffing, Code Review
- Git in Vim
- vimdiff mechanics
- Working on changesets
- Reviewing diffs
- Generating and applying patches
Chapter 18: Terminal Development
- Vim in the terminal
- tmux and pane workflows
- SSH and remote development
- Minimal and constrained environments
- Version parity problems
Chapter 19: Systems Engineering Workflows
- Log analysis workflows
- Incident response on a live system
- Configuration files and validation
- Infrastructure as code
- Vim alongside the Unix toolchain
Chapter 20: Automation and Vim as a Text Processor
- Ex-mode scripting
- The silent/exact batch interface
- Worked transformation examples
- When Vim is the wrong batch tool
Chapter 21: Vim versus IDEs and Other Editors
- What IDEs genuinely do better
- What Vim genuinely does better
- Neovim and the middle ground
- A decision framework
Chapter 22: Productivity, Habits, Mistakes
- The shape of the learning curve
- Building muscle memory
- Keyboard ergonomics
- Common mistakes and how to correct them
- Keystroke economics
- Habits that last
Chapter 23: Anti-Patterns and Troubleshooting
- Over-customization
- Plugin sprawl
- Broken and slow configs
- Version mismatch problems
- Debugging your own setup
- The minimal-config philosophy
Chapter 24: The Grammar Mindset
- What this book gave you
- The maintenance burden, honestly
- Choosing your tool per task
- Continuing the learning
Appendix: The Editing Grammar, Quick Reference
- Navigation (normal mode)
- Search
- Operators and text objects
- Registers
- Marks, repeats, macros
- Ex commands (high-yield)
- Options that shape the experience
- Modes cheat sheet