Friday, February 22, 2013

Vimming

So, recently I've been doing a lot of stuff. Mainly concerning reverse engineering, but I was feeling a bit off. I decided it's time for a change. Since after all, I don't even have the time to watch a movie longer than thirty minutes, not saying anything about playing a game, I thought it's going to be a good idea to ship myself over the linux system. I've chosen Ubuntu, because the time when I had a patience to configure everything in my PC from the bottom-up passed... and it's looking great. After that, I've set up my environment. Got my browser, social communicators ready, checked the compilers, and I started looking for my new code editor (since notepad++ doesn't work in here). I thought about Vim. I gave it chance not so long ago but it didn't fit me. Didn't know why, because it has thousands of positive opinions and it's highly customizable. Now I do. Jumping into such a complicated application right from where you're standing is a terrible idea. I mean, first version of vim was actually running in a console environment. No mouse, no fancy looking windows, no beautiful colors, just black background and some text. It takes some time to learn all the commands, all the hotkeys to even think about staying with Vim. This time I decided to take it slow. I've done vimtutor, read some manual, wrote a simple cheat sheet on paper with all the useful commands and keys, did a bit(!) of configuration, and I still felt that something is terribly wrong. I realized that I was using gVim... Yeah, you might think, "What's the difference?". The answer is, "This is not how vim was intended to be used!". I've switched to the terminal, and you know what? Now I feel like at home. Everything is lean and clean. A bit of transparency to my console window, some graphical tweaks, and voila! Couldn't live without it.

The thing about Vim is that everything you do, you can do without taking your hands of the keyboard. That's simply amazing. Most of the code editors I've been using were aimed at regular people, who didn't have time, nor patience to remember all the hotkeys or commands an application could offer them. So I had to spent half of my time looking for certain editor functions in menu. Now I don't. I've got everything I need in one place. Want to turn something on? Sure, go ahead, type it! Want to make something permanent? Open your configuration file (with edit $MYVIMRC) and type it. That's amazing how it boosts productivity.

My advice to anybody who wants to use Vim: Take your time.

No comments:

Post a Comment