Vim is an open source configurable and powerful text editor. It’s an improved version of the vi editor, with development dating back to 1976. This software can be used to write any kind of text.
Vim sports a minimalistic interface to help the writer focus on the task at hand. It’s popular among developers given that it’s inherently modal (you go into command modes where you cannot edit), efficient, extensible, fast, and terminal friendly.
When getting started with Vim, users face a steep learning curve. It’s true the software is simple. It’s simple in the sense that its minimal interface focuses the user on their main task. But Vim is very powerful.
Why learn Vim?
- It’s ubiquitous. Once you’ve learn how to use Vim, you’ll be able to edit text whatever computer you are accessing, locally or remotely. Vi(m) is a standard editor on the vast majority of UNIX-derived systems including Linux, Solaris, Mac OS X, and the various BSD distributions. Even embedded software in home routers typically include the editor.
- Scalability – the software can be an entire writing platform or used to occasionally edit a configuration file.
- Efficient, extensible, fast, and terminal friendly.
Vim has received considerable notoriety arising from the conflict between Emacs and Vim users. Best stay away from editor wars.
To learn how to use Vim and master that power, we recommend the following free books. Each book is released under an open source license, just like Vim.
1. VIM User Manual by Bram Moolenaar
No roundup of the best free VIM books could be complete without the official VIM User Manual.
It offers task oriented explanations, from simple to complex. Reads from start to end like a book.
It’s available with the standard Vim distribution.
There’s also The Reference manual which provides a precise description of how everything in Vim works.
2. Vim Tutorial and Reference by Steve Oualline
The goal of this book is to provide a tutorial to show the reader how to use the power of Vim to solve common problems. Also the book attempts to show you visually the operation of very major command and option, and to fully document the rest.
- Basic Editing – edit text in Vim.
- Editing a Little Faster – covers additional commands to edit more efficiently.
- Searching – introduction to Vim’s search commands.
- Text Blocks and Multiple Files – deal with larger text blocks.
- Windows and Tabs – split the screen into multiple windows and edit multiple files simultaneously. Also discusses using editing buffers.
- Basic Visual Mode – highlight a block of text and execute a command on it.
- Commands for Programmers – learn about syntax colouring, automatic indentation, indentation commands, commands to navigate through the source code, getting information from the man command, use tags to go up and down a call stack, make programs with the :make command, search files with :vimgrep.
- Basic Abbreviations, Keyboard Mapping, and Initialization Files – ways to automate repetitive tasks.
- Basic Command-Mode Commands – covers how ex-mode commands are structured including printing text lines, substitution, and shell escapes.
- Basic GUI Usage – how to start Vim in GUI mode and make use of the special GUI features.
- Dealing with Text Files – learn about automatic text wrapping, text formatting command, text formatting options, basic spell checking, dealing with different file formats, troff-related commands, and the rot13 algorithm.
- Automation Completion – discusses automatic completion, customize the automatic completion feature, and how to use different types of completions.
- Autocommands – learn about basic autocommands, autocommand groups, and listing and removing autocommands.
- File Recovery and Command-Line Arguments – learn about command-line arguments for file recovery, encryption, batch files and scripts, additional command-line arguments, backup file options, how to do file recovery, and advanced swap file management.
- Miscellaneous Commands – discusses getting character number information, how to go to a specific type in the file, redrawing the screen, sleeping, terminal control, suspending the editor, and reshowing the introduction screen.
- Cookbook – presents a cookbook full of short recipes for common (and not so common) Vim editing.
- Topics Not Covered – describes commands not covered by the book.
- Complete Basic Editing – teaches you everything about basic editing.
- Advanced Searching Using Regular Expressions – learn about turning on and off case sensitivity, search options, instant word searching, how to specify a search offset, and a complete description of regular expressions.
- Advanced Text Blocks and Multiple Files – learn everything about dealing with text blocks and multiple files.
- All About Windows, Tabs, and Sessions -discusses many different commands for selecting and arranging windows, and how to customize the appearance of the windows.
- Advanced Visual Mode – looks at many of the other visual-related commands.
- Advanced Commands for Programmers – removing autoindents, inserting registers and indent, indentation programs options, and more.
- All About Abbreviations and Keyboard Mapping – explains abbreviations and keyboard mapping in complete detail.
- Complete Command-Mode (:) Commands
- Advanced GUI Commands – shows you how to customize the GUI.
- Expressions and Functions – covers basic variables and expressions, the :echo statement Control statements, user-defined functions, and a complete list of built-in functions.
- Customizing the Editor – thorough treatment of the :set command, local initialization files, customizing keyboard usage, customizing messages and the appearance of the screen, and other miscellaneous commands.
- Language-Dependent Syntax Options.
- How to Write a Syntax File.
The content of this book is published under the Open Publication License.
3. Use Vim Like A Pro by Tim Ottinger
Use Vim Like A Pro is an intentionally small micro-book, not a comprehensive guide to all the features of this amazingly powerful editor. The tutorial can elevate your practice and enable deeper learning and better…
Go from noob to pro.
The author has co-written Agile in a Flash. He works at Industrial Logic, an agile consultancy, eLearning vendor, and thought leader.
4. Vim Recipes by Run Paint Run Run
Vim Recipes seeks to complement Vim’s built-in documentation. It sets out a common problem, offers a solution, and then elaborates with discussion notes.
- Other Uses of Vim.
The book’s cover depicts Bram Moolenaar, the creator of Vim.
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.