Vim

JavaScript con Vim: Resaltando la sintaxis

Aunque Vim soporta sintaxis básica para JavaScript, cuando trabajes con especificaciones modernas del lenguaje o bibliotecas como React, que usa JSX, notarás que no funciona todo lo bien que esperas. Una buena opción para realatar la sintaxis de JavaScript en Vim es Polyglot, un conectable que gestiona otros conectables, de sintaxis en este caso, cargándolos bajo demanda para evitar afectar al rendimiento de tu editor de texto. Gracias a Polyglot, si cambias de framework de JavaScript, o si gestionas archivos de otro lenguaje, no es necesario que instales nuevos conectables, porque él lo gestionará de un modo sencillo.

El misterioso netrwhist

Cuando gestionaba mis dotfiles era habitual encontrarme, entre los archivos modificados, al misterioso netrwhist. Antes que nada debes de saber que netrw es un script conectable a vim, que está orientado a redes y que permite lectura, escritura y navegación. netrwhist es el archivo donde netrw guarda un histórico de los directorios que fueron modificados. netrw tiene bastantes opciones de configuración:

let g:netrw_banner = 0
let g:netrw_liststyle = 3
let g:netrw_browse_split = 4
let g:netrw_altv = 1
let g:netrw_winsize = 25
let g:netrw_dirhistmax  = 10
let g:netrw_dirhist_cnt = 6

Un modo de no versionar este histórico es usar el parámetro de configuración netrw_home para guardar su histórico fuera del repositorio dotfiles.

Buscador de texto en Vim

Otro recurso importante que vas a necesitar en Vim es un buscador de textos. Ante el hecho de que el proyecto que permitía el uso de El surfero de plata en vim, ag.vim, ha quedado obsoleto, te podrías decantar por ack.vim. Con ack.vim puedes hacer uso de ack, que no es ni más ni menos que un grep optimizado para programadores.

Instalar ack es bastante sencillo en distribuciones Linux deribadas de Debian.

Búsqueda de archivos en vim

fzf se define a sí mismo como un buscador difuso de línea de comandos para propósitos generales. Más detalladamente, se trata de un filtro para líneas de comandos Unix, que puedes aplicar a listas, archivos, procesos, históricos de comandos, etcétera.

Lo puedes instalar en tu carpeta home clonando su repositorio en GitHub de la siguiente manera:

$ git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf

Luego sólo tienes que ejecutar el script de instalación: