Nvim
Descripción
Neovim es un fork de Vim que apunta a mejorar la experiencia del usuario, el ecosistema de extensiones y las interfaces gráficas.
Instalación
Por distribución
En todas las distribuciones existe la posibilidad de su instalación por repositorios, en Fedora se puede instalar con:
sudo dnf install neovim
Y basta con ejecutar con:
nvim
El funcionamiento por defecto es calcado a vim aunque podemos configurar extensiones para aumentar su rendimiento.
Descarga oficial
Si trabajamos en una distribución más antigua podemos descargar la opción oficial:
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz
sudo rm -rf /opt/nvim
sudo tar -C /opt -xzf nvim-linux64.tar.gz
Y añadimos la ruta al entorno de terminal al final del fichero .bashrc o .zshrc:
export PATH="$PATH:/opt/nvim-linux64/bin"
Eso hará que se ejecute en nuestra sesión. Ahora basta ejecutar:
nvim
LazyVim
Como su nombre indica, LazyVim es una versión "baga" de modificar vim o neovim de tal manera que ya activa pluguins i temas haciendo que el editor pueda ser una gran alternativa a editores como Visual Studio Code . Entre otras mejoras, permite la revisión de código, la introducción de una función y completarla, la revisión del código escrito...
Puede integrarse con lenguajes como bash, php o python entre otros aunque permite la instalación desde su repositorio.
Para instalarlo partimos que tenemos una instalación de neovim y abrimos un terminal para clonar el git y situarlo en el directorio de configuración de nvim.:
git clone https://github.com/LazyVim/starter ~/.config/nvim
eliminamos el .git descargado:
rm -rf ~/.config/nvim/.git
Y ejecutamos nvim para que salga el configurador:
nvim
Por defecto es probable que algunos caracteres no se muestren bien, es por eso que habría que instalar fuentes de texto como se muestra en esta entrada.
En unos segundos se mostraría todos los complementos instalados y si los ha de actualizar:
Una vez acabado haríamos la tecla de ESC y se mostraría el menú inicial:
CheckHealth
Esta es una de las funciones del complemento que permite revisar las posibles dependencias y errores que pueda encontrar, para ejecutarlo solo tenemos que escribir los ":" y en el cuadro de comandos escribir:
Y esto nos devuelve una revisión con los posibles errores y advertencias de funcionamiento o dependencias.
En este ejemplo podemos ver que faltan los programas "fd" y "lazygit", para instalar el primer lo podemos hacer desde repos con:
sudo dnf install fd-find
Y para instalar "lazygit" lo haremos desde el "git" oficial, en este caso por la versión 0.42 y arquitectura de 64b:
wget https://github.com/jesseduffield/lazygit/releases/download/v0.42.0/lazygit_0.42.0_Linux_arm64.tar.gz
tar xzvf lazygit_0.42.0_Linux_arm64.tar.gz
sudo mv lazygit /usr/local/bin/
Y comprobamos la versión
lazygit -v
Con un resultado como este:
commit=6fcb7eb8bb616c170506312870b3bf15f3dbe37c, build date=2024-05-19T10:15:28Z, build source=binaryRelease, version=0.42.0, os=linux, arch=arm64, git version=2.45.2
Volvemos a abrir "nvim", volvemos a ejecutar el checkhealth y...
Instalando herramientas con Mason
Mason nos permite instalar herramientas para nvim, sobretodo para desarrollo, por ejemplo, si estamos creando un script y queremos añadir comandos condicionales como "if" o "case", basta con escribir el nombre y el genera toda la función. Para eso debemos añadir estas herramientas con el programa abierto y abriendo el "CMDline" con ":" y escribimos:
Mason
Esto nos abre una nueva opción con el listado de herramientas instaladas y las disponibles, basta con buscar una ( con CTRL + F ) y seleccionarla con "i", por ejemplo, quiero instalar herramientas para el desarrollo y programación con bash, pues busco:
bash
Y selecciono:
beautysh
spellcheck
bash-language-server
Apretando "i" en cada una de ellas y esto lo instalará automáticamente.
Extra - fuente de texto
Para completar la instalación, se recomienda la instalación de Nerd Fonts.
Para instalarlas basta con descargarlas y descomprimirlas, por ejemplo descargamos las "0xProto Nerd Font":
curl -LO https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/0xProto.zip
y descomprimimos:
unzip 0xProto.zip
Previamente, podemos crear el directorio personal para las fuentes:
mkdir ~/.fonts
Y ahora si podemos copiar el resultado:
cp *.ttf ~/.fonts
Ahora podemos configurar en el terminal o el sistema, por ejemplo con el Gnome Terminal podemos modificar las "Preferencias":
Aparte de los atajos de Vi , nos encontramos nuevos detalles que nos facilitarán el uso, el primero es la tecla "leader" que nos lleva a un menú de opciones que nos permite de manera rápida acceder a un depurador, a un árbol lateral de ficheros, un buscador...
Esto, más los atajos de Vi, las opciones que nos da lazyvim y sus complementos, hace de este editor de consola una gran alternativa de otros más profesionales.