Skip to navigation
Logo Penaz's Area

cat /dev/random > penaz

Impariamo VI (Improved) - I Templates


Impariamo come usare i templates di VI per incrementare la nostra produttività creando una struttura di base per i nostri progetti.

Se siete programmatori, troverete sicuramente fastidioso dover preparare ogni volta la struttura del vostro progetto. Prendiamo per esempio una pagina html: la struttura di base è composta da alcuni tag ricorrenti. Con VI è possibile creare dei templates che verranno automaticamente usati quando necessario. Iniziamo aprendo vi e scrivendo la struttura di base della nostra pagina in html:

<html>
    <head>
        <title></title>
    </head>
    <body>
    </body>
</html>

Salviamolo all'interno di una cartella (che io chiamerò templates) con un nome ben definito, dato dalla combinazione:

.tpl

nel mio caso:

html.tpl

Per attivare la funzionalità templates dovremo inserire questo comando all'interno del nostro file vimrc:

autocmd BufNewFile * silent! 0r /home/penaz/templates/%:e.tpl

Dove /home/penaz/templates è la cartella dove ho inserito il file html.tpl e, come sappiamo, %:e verrà automaticamente espanso all'estensione del file aperto. In questo modo si evita di sporcare il nostro ".vimrc" con un numero eccessivo di righe, una per ogni template; questa riga caricherà automaticamente quello necessario. Nel caso il file aperto non avesse un template, verrà semplicemente generato il solito file vuoto, ma se diamo a VI il comando:

vi prova.html

Vedremo aprirsi VIM il file prova.html con già all'interno:

<html>
    <head>
        <title></title>
    </head>
    <body>
    </body>
</html>

Ovviamente potrete effetturare le stesse operazioni con altri tipi di file, come inserire automaticamente delle inclusioni in file con estensione *.c (il template si chiamerà c.tpl), creare una struttura di base per degli script python (py.tpl) oppure inserire delle stringhe speciali negli script bash (sh.tpl). Le possibilità sono praticamente infinite.

Con questo è tutto. Buon Divertimento!

Saluti e al prossimo post!

Penaz