I like Vim now


That. Is. It. After several months of getting used to using vim, I think I can properly like it now. At least for CLI-based workflows, I absolutely adore it. Although, for GUI workflows, like using on a Linux desktop, or Mac, or Windows, the traditional code editor is still way more convenient and suits the user interaction flow better. I mean, why would the desktop applications exist in the first place and thrive to contemporary popularity if it is not necessary.

That being said, I admit that I am not utilizing Vim to its full potential yet, since the navigation and functions are based on sometimes very arbitrary shortcut keys and my brain is comparable to that of a goldfish who has failed in life. For example, going forward by word is w and my FPS brain is conditioned to s as backward by word. But, it’s actually not even a letter-based key, it is actually Backspace (or delete on a Mac). If I were someone who recognized the hidden power of Vim trying to learn Vim, I would probably not change the shortcut bindings the first thing when I dive in.

There are quirks to using Vim and a steep learning curve for sure, but I absolutely am loving the ability to NOT having to move my hand out of the way to use the mouse pointer nor do I have the ability to do in the first place with a CLI. Currently, my hurdle and damnation that is preventing me from not fully embracing Vim as my go-to editor is probably the convenience of Visual Studio Code on a GUI system. Whilst VS Code has the Vim extension to emulate for editing, the Vim shortcuts sometimes get conflicted with those of VS Code. I might be able to avoid this by simply using Vim from the Terminal shell but there are integrations and other extensions on VS Code that are, more or less, quite crucial to my productive workflow.

That takes us to the extension realm. Vim, no doubt, has an amazing extension and plugin selection out there, online, for anyone to grab and install and ultimately personalize their Vim editor. When talking about this aspect, it is mostly for the Terminal-based use case, as VS Code or other graphical editors have their own repositories of extensions and plugins. Back to the point, installing Vim extensions, or more accurately referred to as ‘plugins’, can be an arduous undertaking. There are several plugin managers for Vim and from which I need to choose one to manage the plugins I would want to install in the future. Among those, a plugin I need might be in one but not the other plugin manager.

Overall, I digress. From an objective view, Vim is a significant productivity tool with the main gotcha is that one actually needs to discard one’s preconceived and/or preconditioned behaviors and learn a whole new skillset. Then, Vim would become the greatest bazooka to shoot through whatever editing needs. I mean, if it is not that good as everyone says it is, why would it even continue to exist in this day and age?