Usar vim como IDE para Ruby on Rails
Vim es un execelente editor de textos perfecto para trabajar con múltiples ficheros de un mismo proyecto. Permite ejecutar scripts sin tener que recurrir a complejos atajos de teclado, y lo más importante, Vim permite trabajar de forma muy rápida. Sin embargo, Vim por defecto cojea a la hora de trabajar con Ruby on Rails debido a sus carencias respecto a a este framework. Para solucionarlo y hacer de Vim un IDE completo y eficiente para trabajar con Rails, propongo en este artículo una serie de configuraciones y scripts (ver autor original al final del artículo).

Primer paso: Configurar vim.
Lo primero será configurar vim para que proporcione una interfaz más amigable de cara al usuario. Lo primero será modificar (o crear) el fichero .vimrc de tu home e incluir lo siguiente:
filetype on " Automatically detect file types.
set nocompatible " We don't want vi compatibility.
" Add recently accessed projects menu (project plugin)
set viminfo^=!
" Minibuffer Explorer Settings
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
" alt+n or alt+p to navigate between entries in QuickFix
map <silent> <m-p> :cp <cr>
map <silent> <m-n> :cn <cr>
" Change which file opens after executing :Rails command
let g:rails_default_file='config/database.yml'
set cf " Enable error files & error jumping.
set clipboard+=unnamed " Yanks go on clipboard instead.
set history=256 " Number of things to remember in history.
set autowrite " Writes on make/shell commands
set ruler " Ruler on
set nu " Line numbers on
set nowrap " Line wrapping off
set timeoutlen=250 " Time to wait after ESC (default causes an annoying delay)
" colorscheme vividchalk " Uncomment this to set a default theme
" Formatting (some of these are for coding in C and C++)
set ts=2 " Tabs are 2 spaces
set bs=2 " Backspace over everything in insert mode
set shiftwidth=2 " Tabs under smart indent
set nocp incsearch
set cinoptions=:0,p0,t0
set cinwords=if,else,while,do,for,switch,case
set formatoptions=tcqr
set cindent
set autoindent
set smarttab
set expandtab
" Visual
set showmatch " Show matching brackets.
set mat=5 " Bracket blinking.
set list
" Show $ at end of line and trailing space as ~
set lcs=tab:\ \ ,eol:$,trail:~,extends:>,precedes:<
set novisualbell " No blinking .
set noerrorbells " No noise.
set laststatus=2 " Always show status line.
" gvim specific
set mousehide " Hide mouse after chars typed
" Backups & Files
set backup " Enable creation of backup file.
set backupdir=~/.vim/backups " Where backups will go.
set directory=~/.vim/tmp " Where temporary files will go.
set mouse=a " Mouse in all modes
syntax enable
Instalar los plugins de Vim necesarios.
Los siguientes plugins harán de Vim un excelente IDE para Rails, hay que descomprimirlos dentro de el directorio .vim de tu home.
-
rails.vim: El núcleo de nuestro IDE, contiene el plugin y la ayuda.
-
Project: Ayuda con la creación de la estructura típica de una aplicación rails.
-
genutils 1.20 (NOT 2.x): Varias funciones muy útiles.
-
multvals.vim: Genutils necesita este plugin.
-
minibufexpl.vim: Añade tabs a vim.
-
dbext.vim: Añade soporte de base de datos a vim,
-
surround: Añade funcionalidad para trabajar cómodamente con llaves, paréntesis...
Generar la documentación.
Una vez instalados todos los plugins, generamos la documentación abriendo vim y ejecutando en modo comando:
:helptags $HOME/.vim/doc
Empezar a usarlo.
Podemos asegurarnos de que ha funcionado correctamente si podemos ver la ayuda de rails.vim haciendo
:help rails
en modo comando.
Para obtener ejemplos de uso y recursos extra, podéis visitar:
