Nvim

De La Wiki de KiVi

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":

Navegación básica

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.