Learning Vim
For the longest time, I've used your typical text/code editors. Think things like Atom (fare thee well), VS Code, vscodium, Sublime, Notepad++. If you can name it, I've probably considered it or tried it in some form. They're very easy to use, have a ton of features (most of which I've never even bothered to learn), and are fairly easy to get started with and customize out of the box. But I've been yearning for something... different.
Oh yeah, Vim is a bit different.
But it's more same-y than you'd think
Everyone jokes that once you enter vim, you can't leave (and mostly because no one knows what :q does). Honestly, I've been using it exclusively for the last week and I can see why. When you first start out, it seems daunting and completely alien. "Wait, I can't just... type? I have to press i first to enter text? That doesn't make any sense!" Wait until you find out that Vim also has it's own concept of windows and tabs!
I was inspired by this post to give this a try. I figured I'd try it out for a couple of hours, get annoyed, and then move on with my life. What I instead came out with was a renewed appreciation for how powerful this editor is. It's not going to win any UI awards (can you even consider it as having a UI in a traditional sense?) and I don't know if I'd call it intuitive, but once you learn how things work, to me it makes sense.
Digging in
Obviously, only being a week into it, I've got a lot to learn about it. I've picked up some of the big things by using the :vimtutor tutorial. This was honestly an incredible thing that I wish I knew about years ago. It takes roughly 30 minutes and is a built-in, step-by-step tutorial on how to use some of the most common features and teaches you how to move forward with the help docs, among other things. And yes, the first thing it teaches you is how to exit the editor. But really, some of the commands it taught me were really cool and helped to break down what seemed like complex commands into what they really are: a grammar language.
Now I have to learn grammar again?!?
It's closer than you'd think, but there's not much to it, at least for what will get you most of the way through. I don't think it's really feasible to learn everything in a short period of time, and you really need to practice at it to get it right, but here are some of highlights for me:
- You typically interact with things like nouns and verbs
- For the most part, verbs act as modifiers to what the noun is selecting
- For example, the noun "w" (which used by itself will move you to the start of the next word) can be modified with "dw", which will delete everything from your cursor to the next word while in normal mode.
- This can be modified further with numbers, such as "d3w", which will delete the next three words from your cursor.
- These nouns and verbs are generally consistent, it's more a matter of how you combine them to see how they interact with one another.
There are also a bunch of other movement commands, commands to copy (or rather, yank), paste, and even the ability to run shell commands directly in vim. The possibilities are really endless.
Where to from here?
I am by no means an expert - or even an amateur for that matter - when it comes to Vim. I still strongly consider myself to be a complete novice, but I can see the power behind it for real. There are a bunch of things I'd like to look at with my .vimrc file (which is really just a personal config file for how I'd like my Vim experience to be). I know the more I use it, the more I'll become comfortable and expand my own knowledge of the built-in commands too. There are even plugins that I've yet to explore - I'd like to get to know the base program better first before I dip my feet in there.
Recommend Resources
I've also found a few resources that have helped me along the way. I've already mentioned :vimtutor, but there are some others that I'd like to share below too:
- vimhelp.org
- Basically the Vim :help text, but on a website
- Vim Adventures
- A browser-based game that teaches you how to use Vim while playing! A really neat concept, I'd like to buy a license for it at some point.
- Vim cheatsheet
- It's in the name, not much more to say there. Handy reference.
If you have any useful resources or tips that you'd like to give me, feel free to shoot me an email (found on my Contact page).

Comments
Nothing yet. Say the first thing.
Sign in to join the conversation.