How to set up Vim for Go Development

One of the major reasons I love programming in Go is that I can do it in any IDE or editor I want, including my favourite Vim editor.

Unlike Java, for example, which is highly coupled to IntelliJ or Eclipse, Go is much more lightweight and the tools you use with it can be integrated with any editor.

In this guide, I will help you setup your Vim as a fully-fledged Go IDE, including the plugins you need to install but also setting up the important options & mappings which you'll use daily.

Continue Reading

Incremental search in vim

incremental search in vim

There is a slight, but obnoxious difference in how the default search works in vim against the way it works in other IDEs.

In vim, whenever you click the / (forward slash) you start writing a word you want to find in the current file. The problem is that you have to write the whole word and click enter before you start seeing the results.

This can work fine and you can cope with it most of the times, but it can start getting in the way pretty quickly once you start searching for longer words or phrases, whose exact identifier you can get wrong pretty easily. At that point, you have to start all over again with the search and be very careful about writing the keywords precisely.

The way search works in IDEs is that it starts showing results while you're typing the keyword. This way, you can:

  • Get to the word you need before you even write the whole keyword
  • Detect a mistake in your term before you're finished

This feature is called incremental search and can be very handy.

Today, I want to show you how to get it in your vim editor.

This article is part of the sequence  Boost Your VIM where I share my favorite vim plugins and tools which can greatly optimize your productivity and make you a better keystroke ninja.

Continue Reading

Pathogen – The Best Plugin Manager for vim

Continuing the Boost your VIM series with the next neat vim plugin - pathogen! Last time, I showed you one of my favorite bash utilities (which happens to work so wonderfully with vim) - tmux. This time, I will introduce you to my weapon of choice when it comes to plugin managers. It's called pathogen. This is the best and yet simplest plugin manager there is. There are others, like Vundle, which I've tried in the past but none can beat pathogen's simplicity. It's so simple (in fact, the total source code is ~250 lines), that this will be a pretty simple post as well. So, if you're ready to hack your VIM with some neat plugins, start with this one and make your life easier.
Continue Reading

tmux – A Terminal Multiplexer

Last time, I wrote about why I think everyone should try using a bare bones text editor like vim at least for a while. After such an experience, some might give up on it, while others might want to switch to vim full-time. For the latter - congratulations! But inevitably, a problem will occur with this approach, especially if you are working on a big project - using bare bones vim for big projects is quite unproductive compared to IDEs. I used to use vim on my hobby side projects and it did a great job, but once I tried using it on a project with a large code base and several different build variants, things started to get messy and I preferred using the IDE. Some of you might disagree with me, I have seen people prefer sticking solely to bare bones vim. But in my experience, apart from the text editing boost it gives you due to its awesome user interface, all the auxiliary tools you need to maintain a big project are invaluable and not easily available from a bare bones vim. So, determined to amend that, I started exploring many different tools and plugins to enable my vim to challenge the productivity my IDE provides. In this new series of articles, I will share my favorite tools which help me keep myself productive everyday by using vim. In the first one, the topic is my all-time favorite vim add-on - tmux.

This article is part of the sequence  Boost Your VIM where I share my favorite vim plugins and tools which can greatly optimize your productivity and make you a better keystroke ninja.

Continue Reading

How can vim make you a better developer

The first time I encountered vim was during a Linux System Administrator course I attended a while ago. Didn't really know much about Linux back then. It just sounded quite fancy. During the course, the lecturer often typed in that 3 word command vim and edited some stuff. "Gee, that looks cool", I thought! So, determined to look cool myself, I got back home, opened a terminal, typed in the magic words and voila! - I was inside vim. So, with a great wish to write my first Hello World txt file in vim, I started hitting keys on my keyboard. And nothing was happening. Some strange beeps started coming out of nowhere and I felt utterly frustrated! So, my goal quickly shifted from typing anything, to exiting vim. Yeah, you probably know what follows. A key-hitting berserk got me while doing everything I can to exit vim. Finally, after failing my first clash with the editor, I was so thankful to have the X key at the top right of my terminal emulator. Now, this story should sound pretty familiar if you ever tried using vim. Well, eventually you learn how to exit it, and you learn how to type in symbols. But there is so much more to it. The endless sets of key-combos can leave you wondering what the heck you did after accidentally hitting a key. Nowadays, vim is the most popular text editor out there. Even some Windows users tend to use it although being an indigenous Unix utility. But what's the point? There are so many IDEs out there. Why would anyone bother poisoning his life with an endless vim frustration, when he can just install the first Javascript IDE google suggests. Well, although it is probably not suitable for any project, there are some great benefits in sticking with vim at least for a while. The greatest one being the user interface. However, the focus of this article is not that. Many articles can be found on the subject and perhaps I will make one in the future. Today, we will explore the much less highlighted merits of the vim editor.
Continue Reading

Site Footer

BulgariaEnglish