# 5+ Reasons Why Programmers Should Learn Vim once in life?

# Introduction:

**Vim** is a highly configurable, **Open Source**, **Text Editor** built to make creating and changing any kind of text very efficient. It is included as "**vi**" with most *UNIX* systems like *Linux* and *macOS*.

# Advantages of Vim:

## **Edit text at the Speed of thought:**

**Vim** lets you write as you thought with the help of **keybindings**, and trust me, you will never leave it when you will learn the **keybindings**.

Vim also supports **Macros**, which simply means you can record your edit **actions** and **re-perform** them.

## **Save your System's Memory:**

**Vim** is a ridiculously lightweight **text editor**. In my **Arch Linux** with **16 GB** ram, it uses only **30-60 MB** of RAM, having **4-5 Plugins**, and yes trust me because I am single and a single man never lies.

## **Magnificent Performance:**

**Vim** can get you from **line no. 1** to line no. **10000** in milliseconds, almost no time, On top of that, it lets you modify thousands of **lines** simultaneously in a matter of **seconds,** On top of that, it does not need high performance **CPU** to do all this.

You can use **Vim** in your **20** years old machine running on **Linux**.

## **Plethora of Plugins:**

You heard it right, **Vim** is a basic **text editor** with so much power in hand. But It has a collection of more than **19K** **plugins** listed on **Vim Awesome**, all **Open Source**.

Check it out here - [https://vimawesome.com/](https://vimawesome.com/)

## **I love Vim Registers:**

You can think of **registers** as a bunch of spaces in **memory** that **Vim** uses to store some text.
Each of these spaces have an **identifier**, so it can be easily accessed later. It’s no different from when you copy some text to your **clipboard**, except that you usually have just one **clipboard** to copy into, while **Vim** allows you to have multiple such **clipboards** to store different texts.

## **Highly Configurable:**

You can define your own **keybindings** in **Vim**, and it also supports custom **scripts** and **plugins**.

## **Vim Saves Time:**

As you saw in one of the above points, using hundreds of shortcuts you can do anything (literally anything) with your text.

# Conclusion:

If **Vim** is that powerful, you might be wondering, Why doesn't everyone using it ?

Well, the answer is pretty simple, It's freakin tough to learn **Vim,** so tough that ****I can bet you will not be even able to **exit** out of the **Vim**, if you are using it for the **first** time.

But **Vim** is totally worth learning, as it is tough to learn those **keybindings** and **shortcuts**, but once you get in the hang of it, there is no turning back.

If you want to learn **Vim** right now, you can learn it with the help of this online game, [https://vim-adventures.com/](https://vim-adventures.com/)

Enjoy!

> ***For more such crispy blogs daily, follow Dev.Junction, subscribe to our newsletter and get notified.***
> 

## Social Links

- **LinkedIn:** [https://www.linkedin.com/in/mnamegaurav/](https://www.linkedin.com/in/mnamegaurav/)
- **YouTube:** [https://www.youtube.com/c/devjunction](https://www.youtube.com/c/devjunction)
- **Website:** [https://gaurav.devjunction.in/](https://gaurav.devjunction.in/)
- **GitHub:** [https://github.com/mnamegaurav](https://github.com/mnamegaurav)
- **Instagram:** [https://www.instagram.com/mnamegaurav/](https://www.instagram.com/mnamegaurav/)
- **Twitter:** [https://twitter.com/mnamegaurav](https://twitter.com/mnamegaurav)
