vim: completamento automatico ruby premendo Tab

March 16, 2011 | 2 Minute Read

Vim è un editor fantastico, anche se la curva di apprendimento richiede un po’ di tempo prima di poterne apprezzare dei vantaggi rispetto ad un normale editor di testo.

Quando iniziamo ad usarlo seriamente, magari per otto ore al giorno, e magari programmiamo in ruby, ci viene da pensare “ma non è che riesco ad avere l’autocompletamento come negli IDE tipo eclipse o Visual Studio?”.

La risposta è “si può fare!”.

Per farlo ci servono due plugin:

rubycomplete che però sembra già essere incluso nell’ultima release di Vim se compilata con il supporto a ruby

supertab che ci permette di eseguire il completamento premendo tab invece dello scomodo Ctrl-x Ctrl-O

scarichiamo i files, li mettiamo nelle rispettive cartelle sotto ~/.vim oppure compiliamo come vim tarball e importiamo da vim stesso, a voi la scelta (magari ci scrivo un articolo sopra).

Poi andiamo a modificare .vimrc aggiungendo

"opzioni rubycomplete
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType ruby,eruby let g:rubycomplete_buffer_loading = 1
autocmd FileType ruby,eruby let g:rubycomplete_rails = 1
autocmd FileType ruby,eruby let g:rubycomplete_classes_in_global = 1
""migliora il colore del menu autocomplete
highlight Pmenu ctermbg=238 gui=bold

Mentre per quanto riguarda supertab non dobbiamo aggiungere nulla, ma ci basterà premere tab per eseguire il completamento automatico.

Tutti questi files, una configurazione direi discretamente organizzata e altri plugin (tra cui gli ottimi rails.vim e fugitive di cui parlerò prossimamente) si trovano nel mio repository su github https://github.com/fabiopozzi/vimfiles

Grazie a questo buon vecchio articolo per l’ispirazione e buona parte del materiale.