How Vim became so popular

You’ve probably heard of Vim, the omnipotent text editor that is used all over the place and from which people from time to time can’t get out… A DevOps engineer you know talks about how awesome and fast Vim is, and you probably thought it was worth giving it a try. But how did we come to this? How did the obsession with Vim once sweep the world?

If you look at 2019 StackOverflow survey about the most popular development environments, Vim is still in fifth place – it is used by about 25% of web developers. Fifth place is pretty good considering that the first release of Vim happened almost 30 years ago (yes, we were not mistaken – the first version of Vim appeared in 1991).

To better understand how and why Vim became (and still is) so popular, we need to explore where it all started. Before vim existed vi, before vi existed ed… What are these two- and three-letter words, and what is the story behind them? Let’s figure it out.

Punched cards and line editors

Today, the reasons for the emergence of text editors and full-featured IDEs are obvious to us.
(Integrated Development Environment), but what came before them? As you probably know, in the early days of programming was about sticking into a computer sheets of cardboard with holes (punched cards)… The order in which these cards were entered was very important. For example, the photo below shows 4.5 megabytes of data collected in stacks of 62,500 punched cards. Imagine that they fell and you had to sort them again.

With the increase in the power and volume of computer storage, punch cards became more and more ineffective, so programming has evolved. Over time, people abandoned punched cards, after which the era of “line editors” came. A great example of such an editor is ed… Also worth mentioning the predecessor ed entitled QED

Working with the line editor

If you are on Linux or Mac OS, open Terminal and type ed… A simple line editor will open, which will greet you with complete silence. If you were amazed by this find (I was amazed), then you can experiment a little with the editor. To enter a file, type a and press Enter and then write your text. By clicking .and then Enter, you will exit the add (insert) mode. To write a file, you can enter w myfile.txt and press Enter, and at the end enter q and press Enter to exit the editor.

# ed a Hey there! I am using ed right now, how cool. OK, that's enough. . w
myfile.txt 64 q

As you may have noticed, there are similarities between working with ed and with modern vim… If you are using Vim, you will get the hang of it pretty quickly. ed

Vim’s father named Vi

After ed appeared em“Editor for mortals” (“Editor for mere mortals”). Its functionality is similar to ed, but it is “less mysterious” and created for ordinary people. Based on code em Bill Joy developed exwhich stands for “extended ed”! It became an important stage, because along with the previous regimes in ex there was a regime visual (“Visual”), which displays the entire file on the screen. You may ask – why didn’t think about it before? In those days, displaying files visually on computers was a rather complicated trick, and many considered it a waste of resources. However, at some point, the benefits outweighed the objections, and the display of the edited file on the screen became the modern standard.

And so the regime was born visual. Later, an executable file appeared in operating systems vi, but we can still use the commands exintroducing : in vi/vim… Editor ex was released in 1976 and the executable vi – in 1979. More than forty years ago! But how did it appear vim?

Imitation game

A couple of years later, many clones appeared vi (I like most of all Elvis). One of them was “Vi Improved”, created by Bram Molenaar – this is the name you see when you start vim in the terminal. To the editor vim managed to stand out from the background of many clones vi… Bram took a clone vi entitled STEVIE (good name, by the way), and noticed that it was missing a lot of commands vi… He added several new features and made it compatible vi, after which he released it under the name “Vi Imitation” (later the name was changed to “Vi Improved”). Name vim appeared in version 2.0, released in 1993, and continues to this day. But how vim achieved his fame? At that time he had many great opportunities and was compatible with vi… Its features and compatibility have made it attractive to many.

Half a century of work

Looking at the most important commands for working with Vim: h, j, k, and l, then they all go back to the era vi… At that time on keyboard Bill Joy had no cursor keys. In addition, the key ESC was located in the place of modern TAB… See how it looked then:

Text replacement commands such as :%s/text_to_replace/text_to_replace_it_with/, also came from that era. Need to enter : to execute a command is the answer to complete silence edthat met users who entered the editor for the first time.

By this I want to show that vim is the result of more than half a century of good ideas and a serious effort to maintain backward compatibility. Yes, useful features may have made Vim famous. But its relevance ensured compatibility with almost any editor. Today you can run Vim, or at least Vi, from SSH. This is one of the most important reasons to study it today.

If you don’t interact with many servers and don’t work with files on them, then the meaning of having Vim everywhere will not affect you. However, it may still be valuable to you.

Conclusion

Hopefully this post has shed some light on how Vim became what it is today. I also hope that I have inspired you to try it. You never know when you might need it, maybe if you like Vim so much, you decide to use it all the time.

Who knows, maybe Vim mode is in your IDE or VSCode. I don’t mean to say that Vim should replace everything you currently use, but learning and customizing it will improve your skills. On the other hand, the most important thing is not the editor, but what you do with it!

Ultimately, you need to find the right editor (or tool) to help you do your job even better.


Advertising

Cloud server rental on Linux or Windows – choose one of the pre-installed OS, or install from your image.

Subscribe to our chat in Telegram

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *