web analytics

[Guida] Automatizzare task ripetitivi con Vim e le macro

vim programming ide

Nella mini guida di oggi vi spiegherò come realizzare delle macro in Vim. La registrazione di una macro è un metodo semplice, alternativo agli script, per eseguire un’attività ripetitiva.

Vim, creare un lorem ipsum generator con le macro

L’editing testuale è un’attività abbastanza comune per chi lavora in ambito informatico. Padroneggiare Vim è sicuramente più complesso rispetto alle moderne alternative come Sublime o VS Code, ma, a mio avviso, permette di incrementare la propria produttività. Qui su LFFL abbiamo pubblicato questa mini guida, suddivisa in due parti, per introdurvi questo potente editor testuale. Oggi, invece, vi parlerò di un altro utile argomento: la creazione di una macro. Parliamo, ovviamente, della registrazione di una serie di comandi da poter richiamare, all’occorrenza, grazie a Vim. Un esempio tipico è il lorem ipsum generator, ovvero durante la programmazione web, per riempire un paragrafo di una demo, si richiama un testo di una predeterminata lunghezza per riempire gli spazi vuoti.

vim macro

Come primo step aprite un file testuale tramite Vim, ad esempio utilizzando la seguente istruzione. Salvate poi il tutto con :w.

vim macro.txt

Registrare e richiamare la macro

Le macro vengono salvate in appositi registri, che Vim etichetta con le lettere dell’alfabeto minuscole dalla a alla z. La sintassi da utilizzare è q<lettera><comandi>q. Una volta aperto il file testuale, dalla normal mode, premete il tasto q seguito dal nome della macro, ad esempio l per lorem. È quindi iniziata la registrazione della macro. Recatevi, quindi, nella insert mode,tramite il tasto ed incollate, per rimanere coerenti con l’esempio, il seguente paragrafo. Successivamente, premete nuovamente q per interrompere la registrazione.

Bacon ipsum dolor amet salami beef swine drumstick pork porchetta pork loin pork belly t-bone fatback meatloaf buffalo shank. T-bone porchetta shank burgdoggen, cow ham hock biltong alcatra strip steak buffalo pastrami. Chicken tail swine drumstick. Hamburger ground round short ribs ribeye ham hock. Tenderloin sausage flank frankfurter tongue. Fatback bacon ham hock turkey short ribs shank strip steak, tenderloin sirloin filet mignon spare ribs venison kevin doner hamburger.

La macro è stata correttamente creata. Sarà possibile richiamarla tramite la sintassi numero@registro. Per incollare due paragrafi, ad esempio, dalla normal mode di Vim, spostate il cursore nel punto desiderato, e date l’istruzione:

2@l

sharing-caring-1Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.