Holas, en esta ocasión no les voy a presentar nada relacionado a un lenguaje de programación en concreto, en vez de eso quiero compartirles la configuración de VIM que utilizo para escribir mucho del código que ha sido compartido en este blog.

Vim

Esta configuración la utilizo en mis equipos, ya sea para editar un archivo de texto plano como para realizar algunas tareas dentro del campo de la programación, como escribir código en C++, Python, HTML, JSON, etc. Para ello tengo algunos plugins instalados que pasaré a explicar a continuación.

  • Vim-Plug -> Gestor de Plugins
  • NERDTree -> Un arbol de directorios muy útil
  • NERDCommenter -> Un plugin que nos permite comentar código
  • NERDTreeGit -> Muestra los archivos modificados en nuestro repositorio
  • NERDTree Syntax Highlight -> Permite poner colores e iconos a nuestros archivos
  • Tagbar -> Una barra que muestra los nombres de las funciones del archivo abierto
  • Lightline -> Un powerline para VIM
  • Vim-Devicons -> Los iconos utilizados por NERDTree Syntax Highlight y Lightline
  • Vim-CloseTag -> Permite cerrar automáticamente los tags de HTML, XTML, etc
  • Vim-Minimap -> Un minimapa al estilo VSCODE/ATOM (Solo funciona con GUI: KVIM, GVIM)
  • Conky Syntax -> Sytaxis para archivos de configuración de Conky
  • Kotlin-Vim -> Syntaxis para Kotlin

El uso de Vim-Plug nos permite cargar los plugins solo cuando sean necesarios o cuando el usuario así lo disponga es decir on-demand, es por esto que esta configuración cargará todo lo relacionado a NERDTree cuando el árbol de directorios sea abierto, de esta manera podemos hacer que VIM no esté sobrecargado y siga siendo veloz, otro ejemplo son los plugins para conky y kotlin que se cargarán solo cuando el archivo abierto sea una configuración de conky o un archivo de kotlin respectivamente.

Además de eso, se encuentran algunas configuraciones personalizadas que utilizo a diario y que me han hecho la vida un poco mas fácil con este editor de curva de aprendizaje un poco elevada, pero muy potente.

Configuraciones personalizadas

Algunas de la configuraciones personalizadas que se encuentran en este dotfiles de vim son para cuestiones de visualización (colores, formas, etc), pero otras son atajos de teclado que las utilizo diariamente.

Atajos de teclado

Como sabrán algunos VIM tiene algunos "modos", que son NORMAL, VISUAL, EDIT

Modo NORMAL

En modo normal se encuentran personalizados los siguientes atajos:

  • 1 -> al presionar el número 1 se abre/cierra NERDTree
  • 2 -> al presionar el número 2 se abre/cierra Tabgbar
  • 3 -> al presionar el número 3 podemos hacer/deshacer el WRAPPING de texto
  • 4 -> al presionar el número 4 se abre/cierra el Minimapa
  • vb -> permite activar el modo VISUAL BLOCK
  • za -> crea una nueva pestaña
  • zx -> cambia a la pestaña de la derecha
  • zz -> cambia a la pestaña de la izquierda
  • Ctrl+V -> pega un texto en VIM
  • Ctrl+A -> Selecciona todo el texto
  • Alt+Derecha -> mueve el cursor de un panel hacia el panel de la derecha
  • Alt+Izquierda -> mueve el cursor de un panel hacia el panel de la izquierda
  • Ctrl+/ -> comenta la linea de código en donde se encuentra el cursor
  • Ctrl+Espacio -> abre un popup similar al de un IDE para autocompletado de código

Modo EDIT

En el modo edit se encuentra un un atajo muy útil para los que quieran escribir HTML, XML que permite auto cerrar los tags, esta configuración es propia del plugin Vim-closetag y funciona de la siguiente manera.

Cuando escribimos un tag por ejemplo <body> al momento de escribir > se autocompleta el tag </body> para cerrarlo en la misma línea, es decir

<body></body>

Si enseguida presionamos > nuevamente el tag se cierra dos líneas después y el cursor se ubica en medio e identado

<body>
    | -> cursor identado
</body> 

Instalación

Para poder instalar esta cofiguración son necesarios algunos pasos, que pasaré a explicar ahora.

  • Instalar las fuentes NERD, esto nos permite tener glyphs los iconos en modo texto, útil para NERDTree, NERDTree-Git, etc y para Lightline estos usados por Vim-Devicons
  • Crear una carpeta llamada .vim en el directorio de usuario
  • Copiar las carpetas colors y confs dentro de la carpeta .vim
  • Copiar el archivo vimrc en la carpeta de usuario como .vimrc
  • Abrir VIM, automáticamente se descargará Vim-Plug y empezará a descargar los plugins que se encuentran en esta configuración

Eso es todo por hoy, espero disfruten de esta configuración tanto como lo hago yo :). Y para aquellos usuarios de GNU/Linux, UNIX, Mac que no hayan utilizado VIM antes, que le den una oportunidad a este excelente editor.

El repositorio donde se encuentra esta configuracion es:
https://github.com/danesc87/dotfiles/tree/master/vim

Happy Hacking!

Última modificación: 16/02/2021

Autor