Messing around with vim

So I’ve been playing around with vim to try to better my usage of the text editor and have found some very interesting features / plugins and one annoying pitfall which I want to share.

To start of, I’m no longer using the standard vim app, but rather gvim as I’ve been looking for better mouse support for a while. I’ve no need of the toolbar (I like keeping the menus around), and removing it is as simple as adding the following to your ~/.vimrc:

set guioptions-=T

Using tabs is nice with the gui (albiet also present w/ the regular text version), you can create a new one with :tabnew and scroll through them with :tabp<CR> and :tabn<CR> also <alt>+<pg up/down> works for scrolling in gvim.

I’ve installed the showmarks plugin which is useful for visualizing the line / column markers you have set in the file you are editing. I’ve just also found the project plugin which I now wonder how I’ve even lived without it (at one point I was considering writing a standalone app just to do what this plugin does) and makes configuring projects and files like you would in an IDE a cinch (I very much recommend trying it if you use vim, it takes less than an hour to learn / completely setup).

Unfortunately one relatively new feature I wanted to try doesn’t work just right in the vim version that currently ships with Fedora. Omni-completion is a very powerful feature of vim that uses ctags to provide code-completion and other functionality to users editing documents. While it comes built in for a wide variety of languages, the Fedora vim version isn’t built with the necessary flags for ruby support and thus auto-completion doesn’t currently work.

If you don’t mind building it yourself you can simply follow the following steps:

Now vim / gvim will be installed on your system with ruby omni-completion support.