What is VIM?

Text editors have come and gone over the past few decades. Newer text editors offer a number of features that people find attractive. That being said, there are a few text editors that have stood the test of time. VIM is one such text editor. You will find it in just about every operating system that was introduced since the 1990’s. It is the text editor of choice for many programmers. Let’s take a few minutes and delve into this text editor. Let us see what it is and why it has had such phenomenal staying power.

Disclaimer – We support VIM to continue building and helping children in the future. Please learn more about the project and donate – https://vim.org

History of VIM

vim editor

When Bram Moolenaar created VIM, it is unlikely that he realized how big of an impact it would have or that the text editor he created more than two and half decades ago would to be the go to tool for developers looking for a powerful yet customizable open source text editor.

Being a developer in the early days was a challenge. VIM was a text editor that was popular in the early 90’s. However, it was only available on UNIX. Developers needed something that was available outside of UNIX. They needed something that was designed so that programmers could use it with ease and something that supported syntax highlighting for different programming languages.

They also wanted to be able to do remote editing via SSH. The goal was to create a text editor that allowed developers and programmers to fine-tune their element environments using various plug-ins to maximize their efficiency.

When Bram Moolenaar created VIM, he was looking for something that would expand the functionality of the VI editor. VIM has taken on a life of its own. It has become so adaptable and so configurable that even Bram Moolenaar would be hard-pressed to name all of the features that it currently has.

Since it is an open source software, Bram Moolenaar created it to be free for everyone. However, in 1993, one year after its release, Bram made a trip to Uganda. While there, Bram fell in love with the country. He returned later and then eventually moved to the country in August 1994. While he was in Uganda, Bram volunteered at a children’s center.

It was then that Bram made the decision to change the software from being shareware to being Charityware. Charityware is software that has additional features that are available for a small fee that is then used to help out a particular charity.

How Text Editors Work and Why They Are So Popular

Some people confuse text editors with word processors. While both can be used to write out text, text editors get rid of the formatting and let you edit plaintext files, such as PHP, CSS, JavaScript, and HTML. Text editors, like VIM, that are built for developers have a number of features that make them usable.

An example of this is syntax highlighting. This makes it easier for a developer to look at the code, read it, and identify any errors that they have made.

Text Editors

A developer is going to spend a good chunk of their time working in a text editor. So they are passionate about the text editors that they use. There are a number of reasons why VIM has become so popular.

First, it is light and portable. VIM can be used on Windows, Linux, as well as MacOS. Most programmers will use it as a command line interface. Its ease-of-use and flexibility is seen in the fact that it can be run remotely via an SSH connection, launched with a terminal, or run through a GUI.

Modality and no mouse functionality is the second reason why the software is so loved. At first glance, a person might think it awkward to work with a software that has no mouse functionality. However, for programmers, this is a godsend. They are able to maximize their productivity because they can use keystrokes to switch between commandline, visual, normal, and insert modes. The key commands will change based on the mode that the programmer is using.

VIM comes with a number of customizable plug-ins. Since this is an open source platform, users have gone crazy creating custom configurations, plug-ins, and features.

Finally, users love motions and text objects available with VIM. Motions and text objects work as if they were verbs and adjectives in the VIM language. This means that a coder can code in a productive and efficient way.

VIM editorLatest Version Updates VIM

As of the time of this writing, the latest update of VIM is 8.1. Version 8.1 is a minor update from the predecessor 8.0. However, version 8.0 is a major overhaul from version 7.4. This is understandable since there has been a 10 year gap between version 7.4 and version 8.1.

Version 8.1 was designed to correct any flaws that were present in version 8.0 as well as update its documentation. A nice feature in version 8.1 is the ability to run a terminal in a VIM window.

Some other noticeable features in the 8.0 and 8.1 updates include:

• Additional features for JSON
• Unique IDs are used to access open VIM Windows
• Timestamps make keeping track of recent logs easier
• Asynchronous I/O support, meaning that you can communicate with background processes
• Support for timers, partials, new style testing, jobs, and closures

Currently, there is no news of an upcoming update. But what is so great about VIM is that there are a number of developers who use the software. So any issue or problem you have VIM can be addressed by professionals almost immediately.

Vim and the Future

Some people shy away from VIM thinking that since it has been used for more than three decades, it has outlived its usefulness. Nothing could be farther from the truth. When it comes to meeting your coding needs, VIM stands head and above the rest. VIM does have a relatively steep learning curve. It is free to use, customizable, has an active online community, has an unprecedented amount of documentation available, and has been designed to work with slow connections. VIM works on almost all operating systems. And there is support for VIM in more than 200 languages. If your language is not there, the option exists for you to create your own.