Búsqueda de archivos en Vim

Author
By Darío Rivera
Posted on 2020-10-23 in Vim

Cuando utilizas Vim una pregunta recurrente es cómo buscar y abrir archivos directamente desde la consola sin tener que salir de Vim. Para esto puedes instalar el plugin command-t. Ya vimos anteriormente Cómo darle super poderes a Vim instalando plugins. Antes de ver la instalación de este plugin es necesario que verifiques un par de requerimientos. Manos a la obra!.

Instalación del plugin

Como cualquier plugin en Vim debes agregar el nombre del paquete e instalarlo como lo haces regularmente. Si utilizas el gestor de paquetes vim-plug puedes agregar lo siguiente a tu archivo ~/.vimrc.

Plug 'wincent/command-t'

Una vez hecho esto puedes proceder con la instalación ejecutando :PlugInstall. Pero esto no es todo, resulta que CommandT aún no es funcional, para que command-t pueda trabajar rápidamente con grandes cantidades de archivos parte del código está escrito en C como extensión de Ruby y debe compilarse para que funcione!.

Soporte para Ruby en Vim

Para que puedas utilizar command-t debes tener soporte para Ruby en Vim. Esto lo puedes verificar entrando a vim y ejecutando el siguiente comando:

:echo has('ruby')

Si obtienes cero (0) no tienes soporte, si obtienes uno (1) si tienes soporte para Ruby en Vim. Si ya tienes instalado Ruby puedes comprobar la versión corriendo el siguiente comando en Vim.

:ruby puts RUBY_VERSION

Instalación en Linux

Instalar vim para ruby suele ser distinto en base al sistema operativo Linux que tengas. Si tienes por ejemplo instalado GNU/Linux Debian podrías dar soporte con el siguiente comando:

sudo apt-get install ruby vim-nox

Después de esto podrías entrar a Vim y verificar si ya se tiene soporte para Ruby (deberías obtener un 1).

Una vez hecho esto necesitarás las herramientas para poder compilar parte del plugin. Es por esto que necesitarás tener instalado en tu máquina un compilador de C. En linux puedes instalar gcc.

sudo apt-get install gcc

También necesitarás el paquete de desarrollo de Ruby. Si utilizas GNU/Linux Debian puedes correr el siguiente comando.

sudo apt-get install ruby-dev

Instalación en MacOS

El primer paso consiste en instalar Ruby.

brew install ruby

Una vez hecho esto deberás entrar a Vim y comprobar el soporte para Ruby. También deberás obtener la versión soportada y según dicha versión ejecutar el siguiente comando.

curl -L https://get.rvm.io | bash -s stable
rvm install "ruby-VERSION"
rvm use VERSION

Compilación

Después de esto, debes ingresar a la carpeta de Vim y buscar el archivo ruby de command-t.

cd ~/.vim
find . -name "extconf.rb"

Obtendrás el path en donde se encuentra, algo similar a lo siguiente

./plugged/command-t/ruby/command-t/ext/command-t/extconf.rb

Debes ingresar a esa carpeta y ejecutar con ruby dicho archivo.

cd ./plugged/command-t/ruby/command-t/ext/command-t
ruby extconf.rb

Si todo ha salido bien podrás correr el siguiente comando para generar la compilación:

make

Obtendrás una salida como la siguiente:

compiling ext.c
compiling heap.c
compiling match.c
compiling matcher.c
compiling watchman.c
linking shared-object ext.so

Después de esto puedes ingresar a vim y utilizar el plugin.

Uso de command-t

La manera estándar de utilizar command-t es mediante su comando en Vim.

:CommandT

Verás que los archivos se listan de manera absuradamente rápida.




Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.