# Chapter 11. vim—vi Improved

#### Contents:

Author and History
Important Command-Line Arguments
Online Help and Other Documentation
Initialization
Multiwindow Editing
GUI Interfaces
Extended Regular Expressions
Improved Editing Facilities
Programming Assistance
Interesting Features
Sources and Supported Operating Systems

vim stands for "Vi Improved." It was written by Bram Moolenaar, who continues to maintain it. Today, vim is perhaps the most widely used vi clone, and there exists a separate Internet domain (vim.org) dedicated to it. Various versions of vim were used for most of the work updating this book; much of the later work was done with Version 5.0. Version 5.1 became current as the updates were finishing; this is mostly a bug fix release.

## 11.1. Author and History

This section is adapted from material supplied by Bram Moolenaar, vim's author. We thank him.

Work on vim started when the author bought an Amiga computer. Coming from the UNIX world, he started using a vi-like editor called stevie. But it was far from perfect. Fortunately, it came with the source code. This is where work on vim started. At first it was a matter of making the editor more vi compatible and fixing bugs. After a while the program became very usable, and vim Version 1.14 was published on Fred Fish disk 591 (a collection of free software for the Amiga).

Other people began to use the program, liked it, and started helping development. A port to UNIX was done, then later to MS-DOS and other systems. vim became one of the most widely available vi clones. More features were added gradually: multi-level undo, multiwindowing, etc. Some features were unique to vim, but many were inspired by other vi clones. The goal has always been to provide the best for the user.

Today vim is one of the most full-featured of the vi-style editors anywhere. The online help is extensive. (It is described in more detail below.)

One of the more obscure features of vim is to be able to type from right to left. This is useful for languages like Hebrew and Farsi. This illustrates vim's versatility. In Version 5.0 the vi compatibility was also improved, and the performance was further tuned. Being a rock-stable editor, on which professional software developers can rely, is another of vim's design goals. Crashing with vim is rare, and when it happens you can recover your changes.

The development on vim continues. Plans for vim 6.0 include support for folding (being able to hide part of the text, e.g., the body of a function). The group of people helping to add features and port vim to more platforms is growing. The quality of the ports to different computer systems is increasing. The MS-Windows version will get dialogues and a file-selector. This opens up the hard-to-learn vi commands to a large group of users.

Copyright © 2003 O'Reilly & Associates. All rights reserved.