# Modelli di file

## Introduzione

Il plugin per i modelli di file ti permette di creare file in base ad altri file. Puoi usare qualsiasi file come modello, il che creerà una copia di quel file con un URL vuoto, o usare un file modello speciale che può contenere macro per inserire informazioni come il tuo nome e indirizzo di posta elettronica, la data attuale e variabili d'ambiente, e posizionare il cursore in un posto opportuno nel nuovo file.

Inoltre, i modelli situati nelle cartelle dei modelli saranno presentati nell'elemento di menu File Da modello....

Il plugin fornisce anche un metodo per creare facilmente un nuovo modello da un documento aperto.

Le cartelle dei modelli sono una parte del file system di &kde;, e consistono di almeno KDEDIR/share/applications/kate/plugins/katefiletemplates/templates e KDEHOME/share/applications/kate/plugins/katefiletemplates/templates. Se la tua variabile d'ambiente KDEDIRS contiene altre cartelle, saranno cercate delle sottorcartelle simili anche in queste. Se vengono trovati modelli con lo stesso nome, viene scelto quello nella cartella locale (KDEHOME).

## Struttura dei menu

File Nuovo da modello Qualsiasi file...

- Ti presenta la finestra di dialogo di apertura del file, che ti permette di usare qualsiasi file come modello. Se il file scelto ha l'estensione `katetemplate` sarà analizzato alla ricerca di informazioni del modello e macro.

File Nuovo da modello Usa recente

- Presenta un elenco di file recentemente usati come modelli, rappresentati dai loro URL.

File Nuovo da modello

- Il resto dei sottomenu contiene dei collegamenti a dei modelli. Fai clic su un elemento del menu per creare un file come descritto dal testo dell'elemento del menu.

Impostazioni Gestisci modelli

- Questo avvierà una finestra di dialogo con un elenco di tutti i modelli trovati nelle cartelle dei modelli correnti, insieme alle opzioni di aggiungere, modificare o rimuovere modelli.

## Creare i tuoi modelli

Per creare un nuovo modello, usa l'elemento Impostazioni Gestisci modelli per avviare una finestra di dialogo. In questa, fai clic su Nuovo... per avviare l'Assistente dei modelli di file. Ti sarà chiesto un file opzionale da far diventare modello e ti saranno chieste le impostazioni delle informazioni del modello, e sarà creato un modello di file.

In alternativa, puoi creare un modello manualmente aggiungendo le informazioni del modello in cima a qualsiasi file; aggiungi testo, macro e marcatore della posizione del cursore, e salvalo con l'estensione `katetemplate`.

Il menu dei modelli viene aggiornato automaticamente se scegli di salvare il tuo modello nella cartella dei modelli.

## Modificare i modelli

Per modificare un modello, usa Impostazioni Gestisci modelli.... Seleziona il modello sul quale vuoi lavorare e fai clic su Modifica..., e il file del modello verrà aperto. Chiudi la finestra di dialogo, modifica il file del modello come desideri, salvalo e chiudilo. I cambiamenti ai modelli hanno effetto immediato, puoi attivare il modello per provare i tuoi cambiamenti dopo averlo salvato.

## Il formato modelli di Kate

Se usi dei file con l'estensione `katetemplate`, saranno analizzati alla ricerca delle informazioni e le macro del modello, e la posizione del cursore.

### Informazioni del modello

Leggendo il file, il programma di analisi tiene da parte le righe che cominciano per `katetemplate:` e ci cerca le informazioni di modello nella forma NOMEVARIABILE=VALORE. La prima riga che non comincia per `katetemplate:` sarà assunta essere l'inizio dei contenuti del modello. VALORE può contenere qualsiasi carattere tranne il segno di uguale (=). I nomi della variabili ammessi sono:

`Template`

- Questo è il nome del modello, mostrato nel menu File Da modello.

`Group`

- Il gruppo posiziona il modello in un sottomenu del menu File Da modello.

`Name`

- Questo è il nome che sarà impostato per il documento, e mostrato nell'elenco dei file e nella barra del titolo. Se il nome contiene `%N`, questo verrà rimpiazzato con un numero, aumentandolo se ci sono altri documenti con lo stesso nome.

`Highlight`

- Il plugin cercherà di impostare l'evidenziazione del nuovo documento al valore di questa variabile. Il valore dovrebbe essere un nome, come si trova nel menu Strumenti Modalità di evidenziazione.

`Description`

- Una breve descrizione informativa del modello. È attualmente usata per impostare una stringa "Che cos'è" per l'elemento del menu, ma potrà essere usata per altre cose in futuro.

Author

- Una stringa che identifica l'autore, per esempio nella forma `Nome <indirizzo di posta>`. È attualmente usata per impostare una stringa "Che cos'è" per l'elemento del menu, ma potrà essere usata per altre cose in futuro.

### Macro del modello

Nell'analisi dei contenuti del modello, le macro nella forma `%STRINGA` sono espanse. Sono supportate le macro seguenti:

%time

- Si espande all'ora corrente nel tuo formato locale, come restituita da `QTime::currentTime().toString()`.

%date

- Si espande alla data corrente in formato lungo, come restituita da `QDate::currentDate().toString()`.

%datetime

- Si espande alle tue data e ora correnti, formattate come una stringa secondo le tue impostazioni locali da `QDateTime::currentDateTime().toString()`.

%year

- L'anno corrente come numero di quattro cifre.

%month

- Il nome completo del mese corrente, secondo la tua localizzazione.

%{date(STRINGADIFORMATO)}

- Si espanderà in una stringa data/ora come definita da `STRINGADIFORMATO`. STRINGADIFORMATO è una stringa di testo, all'interno della quale possono essere eseguite le seguenti sostituzioni:

  ### Entità di formattazione della data

  h | l'ora senza uno zero iniziale (0..23 o 1..12 se si usa AM/PM)
  hh | l'ora con uno zero iniziale (00..23 o 01..12 se si usa AM/PM)
  m | il minuto senza uno zero iniziale (0..59)
  mm | il minuto con uno zero iniziale (00..59)
  s | il secondo senza uno zero iniziale (0..59)
  ss | il secondo con uno zero iniziale (00..59)
  z | i millisecondi senza zeri iniziali (0..999)
  zzz | i millisecondi con zeri iniziali (000..999)
  AP | usa AM/PM. AP sarà sostituito da "AM" o da "PM".
  ap | usa am/pm. ap sarà sostituito da "am" o da "pm".
  d | il numero del giorno senza uno zero iniziale (1-31)
  dd | il numero del giorno con uno zero iniziale (01-31)
  ddd | il nome abbreviato e localizzato del giorno (per esempio 'Lun'..'Dom').
  dddd | il nome lungo e localizzato del giorno (per esempio 'Lunedì'..'Domenica').
  M | il numero del mese senza uno zero iniziale (1-12)
  MM | il numero del mese con uno zero iniziale (01-12)
  MMM | il nome abbreviato e localizzato del mese (per esempio 'Gen'..'Dic').
  MMMM | il nome lungo e localizzato del mese (per esempio 'Gennaio'..'Dicembre').
  YY | L'anno come un numero di due cifre (00-99).
  YYYY | L'anno come un numero di quattro cifre (1752-8000).

  Questo ti permette di controllare in dettaglio la data mostrata, usando separatori comuni tra gli elementi; per esempio: `h:m:s ap`.

%realname

- Si espande al tuo nome completo, se può essere trovato. Il programma di analisi proverà prima le impostazioni della posta elettronica del centro di controllo di KDE, poi le informazioni dell'account utente. Se non può essere trovato un nome completo, viene inserito il tuo nome utente.

%username

- Si espande al tuo nome utente.

%email

- Si espande al tuo indirizzo di posta elettronica, se può essere trovato. Il programma di analisi lo cercherà nelle impostazioni della posta elettronica nel centro di controllo di KDE, se non lo trova userà invece `$USER@$HOST`.

%organisation

- Questa è la tua organizzazione, se presente nelle impostazioni della posta elettronica di KDE del centro di controllo di KDE. Se non viene trovata, viene restituita una stringa vuota.

%VARIABILE

- Qualsiasi altra stringa sarà interpretata come una variabile d'ambiente, e si espanderà al valore di quella variabile. Se non c'è nessuna variabile con quel nome, si espanderà a "ATTENZIONE <VARIABILE> non è impostata".

### Impostare la posizione del cursore

Il programma di analisi cerca un carattere di accento circonflesso (^) che non sia preceduto da una sbarra inversa (\) per decidere dove posizionare il cursore. Se trovato, è rimosso e il cursore verrà posizionato al suo posto. Se vengono trovati più circonflessi senza sbarra, saranno tutti rimossi, e verrà usata la posizione dell'ultimo.

Se verranno trovati circonflessi con sbarra (preceduti da un carattere di sbarra inversa), la sbarra sarà rimossa.

## Ringraziamenti e riconoscimenti

Plugin di &kate; Modelli di file copyright 2004 di Anders Lund anders@alweb.dk.

Copyright della documentazione 2004 di Anders Lund

Federico Zenithzenith@chemeng.ntnu.no

&underGPL;