Perdiendo tiempo… para ganarlo

Básicamente, dedicar tiempo a configurar y aprender a usar las herramientas de trabajo no es perderlo, aunque pueda parecerlo en un primer momento. Uno puede dedicar el día entero a entender cómo funciona un programa (en mi caso, vim) y a ver cómo configurarlo para que se adapte a lo que necesito, y puede parecer una pérdida de tiempo porque ese dia no se ha conseguido ningún avance en el trabajo.

Sin embargo, todo eso resulta ser útil de verdad cuando a medida que vamos conociendo la herramienta, tardamos la mitad de tiempo en hacer las tareas habituales y resulta que hemos ganado eficacia. De esta forma, uno consigue un retorno de la inversion que dura mucho mas tiempo. Es decir, si “pierdo” un día por configurar Vim, instalar plugins y aprender los comandos básicos, lo recuperare con creces, ya que desde ese momento, todos los días ahorraré tiempo de trabajo usando los atajos y la rapidez que permite el programa.

¿Y qué he sacado en claro?

Centrándonos en el tema, mi “pérdida de tiempo” de hoy ha consistido en instalar un plugin para gestionar plugins en vim. Un poco autorreferente.

Y mientras estaba con ello he aprendido como buscar nuevos plugins y de que forma puedo incluirlos para que el gestor de plugins los instale y actualice de forma rápida. Todo desde la interfaz de Vim, lo cual resulta interesante. Además, y esto es la clave del plugin, actualizar esos plugins a sus últimas versiones es algo que se puede hacer de forma directa, sencilla y centralizada desde el mismo programa.

También he aprendido como mapear una funcionalidad a una tecla o combinación de teclas de forma que puedo trabajar de manera mas rapida. NERDTree se activa cuando pulso F2, tal y como lo he configurado en el .vimrc. Lo que significa que puedo trabajar cada vez con mayor rapidez y comodidad.

Tras trastear algo, he descubierto que los plugins que se pueden instalar son o bien de github, o de repositorios git o de archivos pero que esten en forma de repositorio, o sea, que sea un repositorio clonado en el disco. Sin embargo, los repositorios de SourgeForge no los reconoce. Esto lo he descubierto porque he intentado instalar otro plugin que permite navegar a través del código, llamado taglist, pulsando en una función o clase y llegando a la definición de la misma. Como cualquier otro IDE como Eclipse, pero con la ventaja de que se termina trabajando más rápido una vez que se conocen los comandos del editor y evitando consumir la cantidad de memoria que consumen otros editores (como el mismo Eclipse, por ejemplo). Lo que ocurre es que todos los plugins tienen una pagina en http://www.vim.org/scripts en el que aparecen con su nombre simplemente. Poniendo ese nombre en el /.vimrc detras de la palabra Bundle podemos instalarlo desde el vim usando el comando :BundleInstall.

De esta forma, tengo configurado el vim para darme tanta funcionalidad como un IDE cualquiera (Eclipse, Code::Blocks, etc.), ya que puedo ver el árbol de directorios y archivos, puedo enlazar desde una función hasta su definicion, resaltado de sintaxis, completado y cierre de paréntesis y llaves (esto lo tengo pendiente aún), etc. Y todo, configurándolo desde dentro del mismo editor. Este día “perdido” me permitirá trabajar mucho más rápido que antes por lo que recuperaré con creces el tiempo invertido.

Y esto es algo que no se valora en muchos sitios, en concreto en las empresas de España que conozco. Parece que uno tiene que ir como pollo sin cabeza avanzando en su trabajo aunque implique llegar a un punto en el que haya que rehacer todo por no haber tenido tiempo de planificación. Por suerte, estoy en un sitio en el que me permiten esto porque saben perfectamente que recuperarán la inversión, teniendo a una persona capaz de trabajar eficientemente. Al menos, así espero poder trabajar en un tiempo.

Enlaces sobre plugins para Vim:

http://paraisolinux.com/3-plugins-para-hacer-a-vim-a-un-verdadero-ide/
http://mario.thefrutos.com/2011/08/02/vim-y-los-gestores-de-plugins/

Posibles scripts para agregar en el futuro:

http://www.vim.org/scripts/script.php?script_id=1218  es el NERD Commenter. Del mismo creador que el NERDTree.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s