I've been on linux full time for more than 15 years now and never took part in a vim vs emacs battle. Life is incomplete!!— raditha dissanayake (@e4c5) April 23, 2015
it started with a casual comment on twitter. Then at Gaveen's suggestion I decided to finally take a side and had to decide which side! After using a plethora of IDEs all these years I had very little knowledge vim and what I knew of emacs could be written on the back of a stamp. The little bit I knew about vim was thanks to the all the times when I need to edit something on a remote server. Even then for heavy work I prefer to edit locally and rsync.
These days most of my code is python with a bit of Java on Android but surely VIM isn't suitable for the former? As for the latter python-mode seems to be highly recommended so I decided to install it using vundle. This is what the plugins section of my .vimrc looks like
Plugin 'gmarik/vundle' Plugin 'tpope/vim-fugitive' Plugin 'scrooloose/nerdtree' Plugin 'klen/python-mode' Plugin 'majutsushi/tagbar' Plugin 'davidhalter/jedi-vim' Plugin 'joonty/vdebug'
As you can see I have decided not to rely on rope but to use jedi-vim instead, even then I had to make a slight change because autocomplete would automatically select the first item before I had time to select anything. For example when I typed the name of a Django model followed by the '.' jedi would append __str__ at the blink of an eye. That behaviour can be changed with the following settings in .vimrc
let g:jedi#popup_select_first = 0 let g:jedi#popup_on_dot = 0
It's only been a few days but I've already found Nerdtree to be indispensable while tagbar I haven't really made much use of yet. The biggest issue that I need to sort out though is debugging. So far I have tried Vundle without much success. Well, i can in fact get to stop at breakpoints but at that stage the vim tab with the code stops responding.
Update May, 2019:
I switched back to eclipse in early 2017