LaTeX e ViM: una storia d’amore.

Il Linux Day è alle porte, come al solito scrivere le slides diventa una priorità!

Come ogni anno, mi ritrovo a scrivere le slides con il mio caro compagno ViM: è un editor di testi, storicamente parlando uno standard de facto quando si parla di sistemi UNIX.

LaTeX, invece, è un sistema per produrre documenti sfruttando tantissime potenzialità, la combo ViM + LaTeX è di una comodità disarmante. Vediamo nello specifico come configurare in maniera pulita il nostro sistema per scrivere codice LaTeX.

Installiamo le dipendenze necessarie:

# pacman -S texlive-core texlive-latexextra vim zathura git
# git clone https://aur.archlinux.org/latex-beamer-ctan.git \
      cd latex-beamer-ctan.git && makepkg -si

Ora, il comando che vedete sopra viene usato su Arch Linux, su sistemi Debian-based che hanno apt come package manager di default, basta sostituire “pacman -S” con “apt install”, i pacchetti hanno lo stesso nome anche su altre distribuzioni. Beamer è nei repository.

Prima di tutto configuriamo ViM in modo da avere il tutto funzionante:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Avviamo Vim con il comando vim ~/.vimrc e inseriamo la parte riguardante vim-plug, che abbiamo installato prima: vim-plug permette di gestire in comodità tutti i plugins per vim.

call plug#begin('~/.vim/plugged')                                                                                                                                         
Plug 'scrooloose/nerdtree', {'on': 'NERDTreeToggle'}                                                                                                                                                                                                                                                                  
Plug 'lervag/vimtex'                                                                                                                                                      
call plug#end()  

Nello specifico, NerdTREE è il plugin per avere un file manager “avanzato” rispetto a netrw e “vimtex” è il plugin che ci permette di avere l’integrazione con la suite di LaTeX.
Una volta avviato ViM, lanciamo :PlugUpdate e :PlugClean per installare ed aggiornare i plugins.

Ora, in ViM avremo la modalità di compilazione di file *.tex, nel mio caso uso <leader>+vcp per avere un keybind che si occupa solo della compilazione del file LaTeX.

let mapleader = ","
let g:mapleader = ","
nmap <silent><leader> vcp :VimtexCompile<CR>
nmap <silent><leader> vcpo :VimtexCompileOutputs<CR>

Le quattro righe precedenti vanno inserite nel nostro vimrc (file di configurazione di ViM), le prima due assegnano Leader alla virgola, mentre le ultime due assegnano keybind invocati tramite il Leader a comandi che sono shippati da VimTex.

Questo è tutto!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *