
At the hands of an experienced user, editing text with Vim seems like magic: The truth is that Vim provides a different way of interacting with text from anything I've ever seen, a way that gives you a completely different level of control and fluency when editing code. Why should you care about learning about an ancient editor in this day and age? Does it really make such a big difference to my VSCode setup? Why Vim? Isn't Visual Studio Code Enough? Today you can find Vim-like modes in almost any editor and IDE that you can imagine. But the impact of Vim doesn't stop with Vim, Vim's ideas are so very remarkable that they've trascended the Vim editor itself and propagated into other editors.

Vi's latest and most celebrated incarnation is Vim ( Vi IMproved and formerly Vi IMitation) which works both with text and graphical interfaces, comes with a plethora of improvements over vi and is supported on every platform known to humankind. That is, it has a mode for inserting text, another for editing text, a different one for selecting text, and so on. It was designed to work on contraptions called terminals with the very uncommon yet inspired characteristic of functioning in a modal fashion. Vi is an ancient text editor, old even before the first age of the world. I'll guide you through all the concepts and techniques you need to know to be effective with VSCode and Vim. This article doesn't assume any prior Vim knowledge so don't worry if you aren't familiar with Vim.

It's modal nature and text editing features make it unique amongst other editors. It comes with great defaults and is super easy to use and to get started with. It offers an unparalleled user experience with great support for many languages and development ecosystems.
