#howto - Migliorare l'esperienza con Neovim parte 1

Scritto da il
Redatto da
ubuntu
archlinux
fedora
bash
vim

Abbiamo parlato già parlato di Vim in questi tre articoli:

e abbiamo anche introdotto Neovim in questo articolo, ora però vediamo un pò di più nel dettaglio come migliorarne l’esperienza.

Impostazioni di base

Partiamo con le impostazioni base di Neovim, che troviamo nel file ~/.config/nvim/init.vim (o ~/.config/nvim/init.lua se si usa Lua che però non verrà trattato in questo articolo), nel caso non esistessero ancora vanno creati con il comando:

mkdir -p ~/.config/nvim
touch ~/.config/nvim/init.vim

oppure per lua:

mkdir -p ~/.config/nvim
touch ~/.config/nvim/init.lua

Perfetto ora andiamo a popolare il file con delle impostazioni base per rendere il nostro editor più comodo da usare.

Prima di tutto aggiungiamo il seguente codice per abilitare l’highlight della sintassi:

syntax on

Ora aggiungiamo un po’ di estetica per il nostro editor, aggiungendo il seguente codice:

set number
set relativenumber
set cursorline
set cursorcolumn

Ora per migliorare l’indentazione del nostro codice aggiungiamo il seguente codice:

"Possiamo impostare il numero a nostro piacimento (solitamente 2, 4 o 8)
set tabstop=4                   
set shiftwidth=4                
set softtabstop=4               

set expandtab                   
set autoindent

filetype plugin indent on       " abilita l'indentazione in base al tipo di file

Miglioriamo anche la ricerca nel file con le seguenti impostazioni:

set hlsearch
set incsearch
set showmatch

Miglioriamo anche l’utilizzo della clipboard e del copia incolla:

set clipboard=unnamedplus

Le impostazioni base sono complete, ora andiamo a vedere come espandere le capacità di Neovim tramite i plugin.

Plugin Manager

Prima di tutto come per Vim per installare i plugin in Neovim è necessario utilizzare un plugin manager, a differenza di Vim però non andremo ad utilizzare vim-plug ma bensì packer.nvim.

Per installare packer.nvim basta eseguire il seguente comando:

git clone --depth 1 https://github.com/wbthomason/packer.nvim\
 ~/.local/share/nvim/site/pack/packer/start/packer.nvim

Se usate Arch Linux potete installare il pacchetto neovim-packer-git da AUR tramite il vostro AUR helper preferito. Se usate paru:

paru -S neovim-packer-git

Se usate yay

yay -S neovim-packer-git

e così via per gli altri…

Tutti i plugin vanno nel file ~/.config/nvim/lua/plugins.lua, se non esiste ancora basta crearlo con il comando:

mkdir -p ~/.config/nvim/lua
touch ~/.config/nvim/lua/plugins.lua

Ora andiamo inserire nel file plugins.lua il seguente codice per abilitare packer.nvim:

return require('packer').startup(function()
  use 'wbthomason/packer.nvim'
end)

Usciamo e aggiungiamo in cima al nostro ~/.config/nvim/init.vim la riga:

lua require('plugins')

Usciamo nuovamente e rientriamo in un qualsiasi file con Neovim e in normal mode eseguiamo il comando :PackerSync per installare packer.nvim. Una volta eseguito avremo packer installato e funzionante sul nostro editor.

Alcuni comandi utili sono:

  • :PackerSync per installare tutti plugin
  • :PackerUpdate per aggiornare i plugin
  • :PackerClean per rimuovere i plugin non utilizzati
  • :PackerCompile per compilare i plugin
  • :PackerStatus per vedere lo stato dei plugin
  • :PackerInstall per installare un singolo plugin

Perfetto adesso saremo in grado di installare i plugin che ci servono, ma questo lo vedremo nella seconda parte di questo articolo.

history_edu Revisioni