Manuale di Kate

# Manuale di Kate

Anders Lund `<anders@alweb.dk>`

Seth Rothberg `<sethmr@bellatlantic.org>`

Dominik Haumann `<dhdev@gmx.de>`

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

Traduzione e manutenzione del documento: Paolo Zamponi
Traduzione della documentazione.: Nicola Ruggero
Traduzione della documentazione.: Luciano Montanaro
Traduzione della documentazione.: Luigi Toscano
Revisione Applications 22.08 (22/04/2022)

Diritto d'autore © 2000, 2001 Seth Rothberg

Diritto d'autore © 2002, 2003, 2005 Anders Lund

Diritto d'autore © 2005, 2009 Dominik Haumann

Diritto d'autore © 2011, 2012, 2013, 2014 T.C. Hollingsworth

Nota Legale

Kate è un editor avanzato di testi della comunità KDE.

Questo manuale si riferisce alla versione 22.08 di Kate

Lista delle tabelle

4.1. Alcune estensioni KParts disponibili

Lista degli esempi

4.1. Alcune interrogazioni d'esempio
4.2. Interrogazione SELECT d'esempio

Capitolo 1. Introduzione
Introduzione

# Capitolo 1. Introduzione

Benvenuto in Kate, un editor avanzato di testi della comunità KDE. Tra le molte caratteristiche di Kate ci sono l'evidenziazione configurabile della sintassi per linguaggi che vanno dal C e C++ all'HTML e agli script di bash, la possibilità di creare e gestire progetti, un'interfaccia MDI (multiple document interface) ed un emulatore di terminale integrato.

Ma Kate è molto di più di editor avanzato di testi: la sua capacità di aprire diversi file contemporaneamente è l'ideale per modificare molti file di configurazione di UNIX®. Questa documentazione, per esempio, è stata scritta con Kate.

Scrittura di questo manuale...

Capitolo 2. I Fondamenti
I Fondamenti

# Capitolo 2. I Fondamenti

Traduzione e manutenzione della documentazione: Paolo Zamponi
Traduzione della documentazione.: Nicola Ruggero

Se hai già usato un editor di testo non avrai problemi ad usare Kate. Nelle prossime due sezioni, Avvio di Kate e Lavorare con Kate ti mostreremo tutto quello che devi sapere per iniziare ad usarlo velocemente.

## Avvio di Kate

Puoi avviare Kate dall'avviatore di applicazioni o dalla riga di comando.

### Dal menu

Apri il menu dei programmi di KDE facendo clic sull'avviatore di applicazioni nel pannello in fondo a sinistra del tuo schermo; questo farà sollevare un menu. Muovi il puntatore verso la voce Applicazioni → Utilità → Editor di testi avanzato Kate.

### Dalla riga di comando

Puoi avviare Kate digitando il suo nome dalla riga di comando. Se gli scrivi accanto anche il nome di un file, come nell'esempio qui sotto, ti aprirà o ti creerà quel file.

    %kate miofile.txt

Se hai una connessione attiva e i permessi, puoi approfittare del vantaggio della trasparenza nella rete di KDE per aprire file in internet.

    %kate ftp://ftp.kde.org/pub/kde/README

Per modificare la cartella dei file temporanei, che come impostazione predefinita è `/tmp`, imposta la variabile di ambiente `TMPDIR` prima di avviare Kate, ad esempio:

    %mkdir /tmp/kate -p && export TMPDIR=/tmp/kate && kate

#### Opzioni dalla riga di comando

Kate accetta le seguenti opzioni dalla riga di comando:

`kate `--help``

  Questo elenca le opzioni disponibili dalla riga di comando.

`kate `-s` `--start` `nome``

  Avvia Kate con la sessione `nome`; la sessione è creata se non è già esistente. Se un'istanza di Kate con la sessione specificata è già in esecuzione, i file specificati sono caricati in tale istanza.

`kate `-p` `--pid` `PID``

  Riutilizza un'istanza con il PID specifico (ID del processo).

`kate `-e` `--encoding` `codifica` `URL``

  Usa la codifica specificata per il documento.

`kate `-l` `--line` `riga` `URL``

  Si posiziona alla riga specificata dopo aver aperto il documento.

`kate `-c` `--column` `colonna` `URL``

  Si posiziona alla colonna specificata dopo aver aperto il documento.

`kate `-i` `--stdin``

  Legge il contenuto del documento da STDIN. È simile all'opzione `-` comunemente usata in molti programmi da riga di comando, e permette di incanalare l'output di un comando in Kate.

`kate `--startanon``

  Avvia Kate in una nuova sessione anonima, implica `-n`.

`kate `-n` `--new``

  Forza l'avvio di una nuova istanza di Kate (è ignorato se è usato `start` e un'altra istanza di Kate ha la sessione specificata aperta). La forzatura avviene se non sono stati indicati parametri oppure URL.

`kate `-b` `--block``

  Se è in uso un'altra sessione di Kate già in esecuzione e se vengono specificati URL, blocca quella sessione fino a quando esci.

  Puoi usare Kate con questa opzione come editor per messaggi di deposito nei sistemi di controllo versione come Git oppure Subversion. Questi sistemi si aspettano di bloccare l'editor fino a quando on hai inserito il messaggio, perché aprono subito dopo il file temporaneo con il contenuto. Se Kate ritorna immediatamente al chiamante, il file temporaneo è vuoto.

  Questa opzione è richiesta anche con KIO (KDE input/Output) nel caso in cui tu apra un file remoto (che è stato scaricato in un file temporaneo) che debba essere rinviato dopo che lo hai salvato.

`kate `--tempfile``

  Quando è usata i file specificati sono trattati come temporanei ed eliminati (se sono locali e hai i permessi appropriati) quando vengono chiusi, a meno che non siano modificati da quando sono stati aperti.

`kate `--desktopfile` `nome``

  Il nome file della voce del desktop per questa applicazione.

  Questo è utile in particolare per applicazioni adattatori e per applicazioni in generale con più file desktop. In questo modo ogni file desktop può specificare il proprio nome nel comando `Exec`.

`kate `--author``

  Elenca gli autori di Kate nella finestra del terminale.

`kate `-v` `--version``

  Elenca le informazioni sulla versione di Kate.

`kate `--license``

  Mostra le informazioni sulla licenza.

### Trascinamento

Kate usa il protocollo di trascinamento (drag and drop protocol) di KDE. I file possono essere trascinati e rilasciati in Kate dal Desktop, dal gestore di file Dolphin o da alcuni siti FTP aperti in più finestre di Dolphin.

Lavorare con Kate
Lavorare con Kate

## Lavorare con Kate

Avvio rapido ti mostrerà come modificare quattro semplici opzioni che ti consentiranno di configurare alcune della più potenti caratteristiche di Kate. Scorciatoie visualizza alcune delle scorciatoie predefinite per quelli che non possono o non vogliono utilizzare il mouse.

### Avvio rapido

Questa sezione descrive alcuni degli elementi presenti nel menu Visualizza, in modo che tu possa configurare rapidamente Kate per lavorare nella maniera che desideri.

Avviando Kate per la prima volta vedrai due finestre con lo sfondo bianco. Sopra le due finestre c'è una barra degli strumenti con le solite icone etichettate. E sopra a questa, la barra del menu.

La finestra di sinistra è una barra laterale. Combina le finestre Documenti e Selettore dei file. Cambia da una finestra all'altra facendo clic sulle linguette a sinistra della finestra.

Se hai avviato Kate con un file, la finestra a destra mostrerà il file che stai modificando, ed il pannello Documenti nella barra laterale mostrerà il nome del file. Usa la finestra del Selettore dei file per aprire i file.

Puoi attivare o disattivare tutte le finestre della barra laterale dal menu Visualizza → Viste degli strumenti, oppure usare Ctrl+Alt+Shift+F. Questo menu offre una prima occhiata alle potenzialità e alla flessibilità di Kate.

In Viste degli strumenti c'è una lista di tutte le estensioni abilitate. Fai clic nella casella davanti a ciascun elemento, oppure sul pulsante dello strumento con tasto sinistro del mouse nella barra laterale per attivare o disattivare questa vista dello strumento.

### Scorciatoie

Molte scorciatoie di Kate possono essere configurate attraverso il menu Impostazioni. Le impostazioni predefinite di Kate prevedono le seguenti associazioni di tasti.

F1 | Aiuto
Shift+F1 | Che cos'è?
Ctrl+N | Nuovo documento
Ctrl+L | Salva tutti
Ctrl+O | Apre apri un documento
Ctrl+Alt+O | Apertura rapida
Ctrl+Shift+F | Modalità a tutto schermo
Ctrl+Shift+, | Configura Kate
Ctrl+W / Ctrl+Esc | Chiudi
Ctrl+Q | Esci - chiude la copia attiva dell'editor
Ctrl+Alt+Shift+F | Mostra le barre laterali
Ctrl+Shift+T | Dividi orizzontalmente
Ctrl+Shift+L | Dividi verticalmente
F8 | Vista divisa successiva
Shift+F8 / Ctrl+Esc | Vista divisa precedente
Ctrl+Shift+R | Chiudi la vista corrente
Alt+→ | Scheda successiva
Alt+← | Scheda precedente
Ctrl+Shift+T | Riapri gli ultimi documenti chiusi

Inoltre puoi usare le scorciatoie fornite dal componente KatePart e da tutte le estensioni di Kate attivate.

Lavorare con Kate MDI
Lavorare con Kate MDI

## Lavorare con Kate MDI

### Panoramica

Finestra, Vista, Documento, Cornice, Editor... Che cosa sono tutti queste voci nella terminologia di Kate, e come ottenerne il massimo? Questo capitolo spiegherà tutte queste cose, e molto di più.

#### La finestra principale

La finestra principale di Kate è una finestra standard di KDE, con l'aggiunta di barre laterali contenenti le viste degli strumenti. Ha una barra del menu con tutti i menu più comuni e qualcuno in più, e una barra degli strumenti che dà accesso ai comandi usati più spesso.

La parte più importante della finestra è l'area dell'editor che, per impostazione predefinita, visualizza un solo componente editor di testi; qui puoi lavorare con i tuoi documenti.

La capacità di agganciarsi delle finestre viene utilizzata dai pannelli degli strumenti di ogni estensione abilitata nella finestra delle impostazioni.

Le viste degli strumenti possono essere posizionate in una qualsiasi barra laterale; per spostare uno strumento fai clic sul pulsante dalla sua barra e selezionalo dal menu con il tasto destro del mouse.

La vista di uno strumento può essere indicata come persistente dal menu del tasto destro del mouse. La barra laterale può contenere più strumenti per volta, in modo che quando uno strumento è persistente gli altri possono essere mostrati in contemporanea.

Se un'estensione ha le sue opzioni di configurazione puoi usare il primo elemento del menu contestuale per aprire la relativa pagina nella finestra delle impostazioni di Kate.

### L'area di modifica

Kate può avere più documenti aperti allo stesso tempo, ed inoltre può dividere l'area dell'editor in qualsiasi numero di finestre, in maniera simile a Konqueror o al popolare emacs. In questa maniera puoi vedere diversi documenti allo stesso tempo, o più istanze dello stesso documento, per esempio se il tuo documento contiene definizioni all'inizio che vuoi vedere spesso per riferimento. Potresti anche vedere l'intestazione del sorgente di un programma in una finestra, e intanto modificare il file di implementazione in un'altra.

Quando un documento è disponibile in più di un editor i cambiamenti effettuati su uno degli editor saranno immediatamente riflessi negli altri; questo include la selezione e la modifica del testo. Le operazioni di ricerca o i movimenti del cursore si rifletteranno solo nell'editor corrente.

Attualmente non è possibile avere più istanze aperte dello stesso documento, nel senso che in una istanza compaiono le modifiche che si stanno facendo mentre nell'altra no.

Quando dividi l'editor in due appaiono due riquadri della stessa dimensione, che visualizzano entrambi il documento corrente. Il nuovo riquadro sarà in basso (nel caso di divisione orizzontale) o a destra (con la divisione verticale), e sarà attivato; questo viene palesato dalla presenza del cursore lampeggiante.

Uso delle sessioni
Uso delle sessioni

## Uso delle sessioni

Le sessioni sono il metodo che Kate usa per raccogliere liste multiple di file e di configurazioni della GUI. Puoi avere tutte le sessioni con nome di cui hai bisogno, e puoi usare le sessioni senza nome o anonime per i file che vuoi usare solo una volta. Attualmente Kate può salvare la lista dei file aperti e la configurazione generale della finestra in una sessione, ma versioni future di Kate potrebbero aggiungere altre caratteristiche che siano memorizzabili nelle sessioni. Con l'introduzione delle sessioni, Kate permette anche di aprire un numero a piacere di istanze dell'applicazione invece di una sola, come invece faceva prima.

Le sessioni sono utilizzate in tre aree:

- Le opzioni da riga di comando, che permettono di selezionare ed avviare sessioni quando si avvia Kate da riga di comando.

- Il menu Sessioni, che permette di cambiare, salvare, avviare e gestire le tue sessioni.

- Le opzioni di configurazione, che permettono di decidere come debbano comportarsi generalmente le sessioni.

Quando si avvia una nuova sessione viene caricata la configurazione della GUI della Sessione predefinita. Per salvare la configurazione della finestra come sessione predefinita devi abilitare il salvataggio della configurazione della finestra nella pagina di configurazione delle sessioni della finestra di configurazione e poi caricare la sessione predefinita, impostare la finestra come preferisci e salvare nuovamente la sessione.

Quando viene caricata una sessione con nome Kate mostra il nome della sessione all'inizio del titolo, che quindi avrà la forma «`Nome sessione`: `Nome o URL del documento` - Kate».

Aprendo i file da riga di comando con `--start `nome``, oppure selezionando una sessione dal selettore delle sessioni, la sessione specificata viene caricata prima dei file specificati da riga di comando. Per aprire i file da riga di comando in una sessione nuova e senza nome configura Kate in modo che avvii come predefinito una nuova sessione dalla pagina delle sessioni della finestra di configurazione, oppure usa l'opzione `--start` con una stringa vuota: `''`.

Da Kate 2.5.1 il PID dell'istanza attuale è esportato nella variabile di ambiente `KATE_PID`. Quando vengono aperti dei file dal terminale integrato, Kate selezionerà automaticamente l'istanza attuale se non viene indicato nient'altro da riga di comando.

Apertura rapida
Apertura rapida

## Apertura rapida

Per essere in grado di aprire e di passare rapidamente tra i file, Kate ha una finestra di apertura rapida integrata. Puoi aprirla con Ctrl+Alt+O.

L'apertura rapida può mostrare tutti i documenti aperti in Kate e in tutti i file nei progetti aperti. Per poter vedere i file di progetto devi abilitare l'Estensione di progetto.

### Uso dell'apertura rapida

L'uso dell'apertura rapida è molto semplice. Una volta aperta, digita il nome o la porzione del nome del file che vuoi aprire: la funzione filtrerà l'elenco in base a ciò che hai digitato. Premendo Invio il file selezionato verrà aperto, mentre con Esc l'apertura rapida verrà nascosta.

Per impostazione predefinita, durante il filtraggio verrà associato solo il nome. Se vuoi associare il percorso ci deve essere un «/» nel testo digitato. Ad esempio, «documenti/pippo» farà corrispondere tutti i file nella cartella «documenti» che contengono «pippo».

Quando la finestra si apre, i documenti già aperti sono evidenziati i grassetto e vengono elencati in cima. Inoltre, quando l'apertura rapida compare, il documento aperto in precedenza è già selezionato: devi solo premere Invio e verrai portato in quel documento.

### Configurazione dell'apertura rapida

L'apertura rapida fornisce un paio di opzioni di configurazione. Per avere accesso a queste opzioni, tasto destro nella riga di modifica.

Le opzioni attualmente disponibili sono:

  `Progetto attuale` - mostra solo i file dal progetto attuale

  `Tutti i progetti` -mostra i file da tutti i progetti aperti

  `Filtraggio approssimato` - usa l'algoritmo di ricerca approssimata per filtrare i file

  `Filtraggio con caratteri jolly` - usa la corrispondenza con caratteri jolly per filtrare i file

Ricevere aiuto
Ricevere aiuto

## Ricevere aiuto

### Con Kate

Questo manuale

  Offre una documentazione dettagliata su tutti i comandi dei menu, opzioni di configurazione, strumenti, finestre di dialogo, estensioni ecc. così come le descrizioni delle finestre di Kate, l'editor e i vari concetti usati nell'applicazione.

  Premi F1 o usa il menu Aiuto → Manuale di Kate per visualizzare questo manuale.

Guida a Che cos'è?

  Che cos'è? offre un aiuto immediato con i singoli elementi delle finestre grafiche, come pulsanti o altre aree della finestra.

  Noi ci sforziamo di fornire l'aiuto Che cos'è? per tutti gli elementi per cui ha senso che esista. È disponibile nella finestra di dialogo della configurazione, e in molte altre finestre di dialogo.

  Per usare l'aiuto Che cos'è?, premi Shift+F1 oppure usa il menu Aiuto → Che cos'è? per abilitare la modalità Che cos'è?. In questo caso il cursore si trasformerà in una freccia con un punto di domanda: ora puoi fare clic su qualsiasi elemento della finestra, e leggere l'aiuto Che cos'è? per quell'elemento (se disponibile).

Pulsanti di aiuto nelle finestre di dialogo

  Alcune finestre di dialogo possiedono il pulsante Aiuto: se lo premi aprirai il KHelpCenter e quindi la documentazione collegata.

### Con i tuoi file di testo

Kate non fornisce (non ancora!) tutti gli strumenti per leggere la documentazione relativa ai documenti. A seconda del file che stai modificando, puoi trovare utile la sezione emulatore di terminale integrato per vedere le relative pagine del manuale di UNIX® o la documentazione info, oppure puoi usare Konqueror.

### Articoli su Kate

La page iniziale di Kate fornisce alcuni articoli e how-to per approfondire aspetti che questo manuale non tratta.

Capitolo 3. Lavorare con l'editor Kate
Lavorare con l'editor Kate

# Capitolo 3. Lavorare con l'editor Kate

Per informazioni sulle basi del lavoro con il componente di sottolineatura dell'editor Kate vedi il capitolo Lavorare con l'editor KatePart del manuale di KatePart.

Capitolo 4. Lavorare con le estensioni
Lavorare con le estensioni

# Capitolo 4. Lavorare con le estensioni

Anders Lund `<anders@alweb.dk>`

Traduzione e manutenzione della documentazione: Paolo Zamponi
Traduzione della documentazione: Vincenzo Reale
Traduzione della documentazione: Nicola Ruggero
Traduzione della documentazione: Federico Zenith

Puoi abilitare le singole estensioni nella finestra di configurazione, che dà anche accesso ad opzioni di configurazione aggiuntive, se richieste dalle estensioni.

## Estensioni dell'applicazione Kate

Le estensioni di Kate sono funzioni aggiuntive per l'editor Kate. Possono aggiungere nuovi menu e nuove scorciatoie, ed estendere le funzionalità di Kate. Puoi installarne quante ne vuoi, e dall'interno di Kate: apri la finestra di configurazione di Kate con Impostazioni → Configura Kate..., seleziona Applicazione → Estensioni e scegli quelle che vuoi.

Le estensioni per l'applicazione disponibili sono:

- Strumenti esterni: avvia strumenti esterni ed applicazioni

- Navigatore backtrace: vista dello strumento di navigazione dei backtrace C/C++

- Estensione di compilazione: compila o esegui il make ed elabora i messaggi d'errore

- Chiudi escludendo/includendo: chiudi un gruppo di documenti in base a un percorso comune, o a un'estensione di file

- Selettore di colore: mostra l'anteprima per i nomi dei colori noti

- Parentesi colorate: parentesi colorate per migliorare la leggibilità

- CTags: cerca definizioni e dichiarazioni con CTags

- Anteprima del documento: esegui l'anteprima del documento nel formato di destinazione

- Selettore di documenti: sfoglia rapidamente i documenti per mezzo della combinazione Alt+Tab

- Selettore dei file: vista dello strumento Selettore dei file

- Vista Albero dei documenti: visualizza i file aperti in un albero di file

- GDB: fornisce una semplice interfaccia a GDB

- Estensione di progetto: integrazione con Git e con altri sistemi di controllo del sorgente

- Replicode - linguaggio costruttivista per IA ed esecuzione

- Client LSP: il client LSP fornisce navigazione e completamento del codice per molti linguaggi

- Cerca e sostituisci: cerca e sostituisci nei documenti, nelle cartelle o nei progetti

- Vista strumento per i frammenti di testo: vista dello strumento che incorpora la gestione dei frammenti

- Macro da tastiera: registra ed esegui le macro da tastiera (cioè una sequenza di azioni da tastiera).

- Estensione SQL: interroga le banche dati SQL

- Visore di simboli estrai e visualizza i simboli di riferimento dal sorgente

- Vista strumento Terminale: usando l'oggetto Konsole di KDE hai un terminale pronto all'uso

- Filtro di testo: elabora il testo usando comandi da terminale

- Completamento XML: elenca gli elementi, gli attributi, i valori di attributi e le entità XML permesse da DTD.

- Validazione XML: valida i file XML con xmllint

- Esploratore del compilatore: interfaccia allo strumento Esploratore del compilatore

- Formattazione: estensione per la formattazione del codice

Strumenti esterni
Strumenti esterni

## Strumenti esterni

L'estensione Strumenti esterni ti permette di invocare delle applicazioni esterne con dei dati collegati al documento corrente, ad esempio al suo URL, alla sua cartella, al suo testo o alla sua selezione. Una volta abilitati appare, come illustrato di seguito, una pagina di configurazione, che ti consente di modificare o di rimuovere gli strumenti esistenti. Allo stesso modo puoi aggiungere dei nuovi strumenti a tuo piacimento: essi appariranno quindi nel sotto-menu Strumenti esterni del menu Strumenti dell'applicazione.

La pagina di configurazione permette di aggiungere nuovi strumenti esterni facendo clic sul pulsante Aggiungi. In questo caso, un menu a comparsa apparirà sia dove si può aggiungere un nuovo strumento esterno che aggiungere uno strumento esistente da una lista predefinita o aggiungere una nuova categoria per organizzare gli strumenti esterni in categorie. Allo stesso modo, gli strumenti esistenti possono essere modificati sia facendoci doppio clic, sia invocando Modifica..., mentre Rimuovi rimuove gli strumenti selezionati.

### Configurazione degli strumenti esterni

La modifica di uno strumento apre una pagina di configurazione che permette una configurazione particolareggiata dello strumento:

Come si può vedere si possono definire molti dettagli, ovvero:

  `Nome`, il nome dello strumento, che apparirà successivamente nel menu.

  `Icona`, l'icona opzionale che è visibile nel menu.

  `Eseguibile`, l'eseguibile, che include anche il percorso completo se esso non è nella variabile d'ambiente `PATH`.

  `Argomenti`, argomenti facoltativi da passare all'eseguibile.

  `Ingresso`, un ingresso facoltativo che viene passato al processo tramite stdin.

  `Cartella di lavoro`, la cartella di lavoro dello strumento in cui verrà avviato lo strumento. Se vuoto, verrà impostata al percorso del documento corrente.

  `Tipi MIME`, se impostato, fa in modo che lo strumento sia attivo solo se corrisponde con quello del documento corrente.

  `Salva`, quando invocato, non salva niente, oppure il documento corrente o tutti i documenti.

  `Attivazione`, i criteri di attivazione per eseguire lo strumento. Esso influenzerà il documento attivo corrente, e verrà eseguito solamente se il suo tipo MIME corrisponde a quello dello strumento esterno.

  Sono disponibili i seguenti criteri di attivazione:

    `Nessuno`: è il predefinito, significa che lo strumento non ha criteri di attivazione.

    `Prima di salvare`: questo criterio di attivazione eseguirà lo strumento appena prima che il documento venga salvato.

    `Dopo aver salvato`: questo strumento di attivazione eseguirà lo strumento dopo che il documento è stato salvato.

  `Ricarica il documento corrente dopo l'esecuzione`: è utile quando il file corrente viene modificato sul disco.

  `Risultato`: il risultato definisce l'obiettivo di stdout. È impostato o a `Ignorato`, o a `Inserisci alla posizione del cursore`, o a `Sostituisci il testo selezionato`, o a `Sostituisci il documento corrente`, o a `Aggiungi al documento corrente`, o a `Inserisci in un nuovo documento`, o a `Copia negli appunti`, o a `Visualizza nel pannello`.

  `Editor dei comandi`, comando facoltativo che può essere usato per invocare lo strumento esterno dalla riga di comando integrata.

Il pulsante Valori predefiniti è visibile solo per gli strumenti che vengono forniti con Kate. Se ci si fa clic, tutte le impostazioni dello strumento vengono riportate al loro valore predefinito (o di fabbrica).

### Espansione delle variabili

Alcuni campi modificabili, quali Eseguibile, Argomenti, Ingresso e Cartella di lavoro supportano delle variabili che verranno espanse quando lo strumento verrà invocato: esse vengono indicate dall'icona {} che appare quando uno di questi campi di inserimento testuale ha il fuoco (vedi il cerchio rosso):

Se si passa col mouse sopra ad uno di questi campi di inserimento testuale viene anche mostrato un suggerimento col testo corrente espanso. Inoltre, facendo clic sull'azione {} si aprirà una finestra che elenca tutte le variabili disponibili:

Questa funzionalità fornisce una gran flessibilità quando si definisce uno strumento esterno, dal momento che tutte le variabili nella forma `%{...}` vengono espanse quando lo strumento viene invocato. Ci sono due tipi di variabili supportate:

- `%{variable-name}`

- `%{variable-name:<value>}`

. La prima forma, `%{variable-name}`, sostituisce semplicemente la variabile col suo contenuto. Per esempio, la variabile `%{Document:FileName}` viene sostituita dal nome del file del documento corrente senza il percorso. La seconda forma, `%{variable-name:<value>}`, prende `<value>` come contenuto, per esempio può essere usata per espandere una variabile d'ambiente con `%{ENV:HOME}`, oppure si può ottenere la data corrente nel formato preferito, come `%{Date:yyyy-MM-dd}`.

Le variabili supportate includono:

  `Document:FileBaseName`: nome di base di file, senza percorso e suffisso, del documento corrente.

  `Document:FileExtension`: estensione del file del documento corrente.

  `Document:FileName`: nome del file senza percorso del documento corrente.

  `Document:FilePath`: percorso completo del documento corrente, incluso il nome del file.

  `Document:Text`: contenuto del documento corrente.

  `Document:Path`: percorso completo del documento corrente, senza il nome del file.

  `Document:NativeFilePath`: percorso completo del documento corrente, incluso il nome del file, con il separatore di percorso nativo (la barra inversa in Windows).

  `Document:NativePath`: percorso completo del documento corrente, senza il nome del file, con il separatore di percorso nativo (la barra inversa in Windows).

  `Document:Cursor:Line`: numero di riga della posizione del cursore di testo nel documento corrente (inizia da 0).

  `Document:Cursor:Column`: numero di colonna della posizione del cursore di testo nel documento corrente (inizia da 0).

  `Document:Cursor:XPos`: componente X della posizione del cursore nelle coordinate globali dello schermo.

  `Document:Cursor:YPos`: componente Y della posizione del cursore nelle coordinate globali dello schermo.

  `Document:Selection:Text`: selezione di testo del documento corrente.

  `Document:Selection:StartLine`: riga iniziale della selezione di testo del documento corrente.

  `Document:Selection:StartColumn`: colonna iniziale della selezione di testo del documento corrente.

  `Document:Selection:EndLine`: riga finale della selezione di testo del documento corrente.

  `Document:Selection:EndColumn`: colonna finale della selezione di testo del documento corrente.

  `Document:RowCount`: numero di righe del documento corrente.

  `Document:Variable:<variable>`: espande variabili del documento arbitrarie.

  `Date:Locale`: la data attuale nel formato della localizzazione corrente.

  `Date:ISO`: la data attuale (ISO).

  `Date:<value>`: la data attuale (QDate formatstring).

  `Time:Locale`: l'ora attuale nel formato della localizzazione corrente.

  `Time:ISO`: l'ora attuale (ISO).

  `Time:<value>`: l'ora attuale (QTime formatstring).

  `ENV:<value>`: accesso alle variabili d'ambiente.

  `JS:<expression>`: valuta una semplice espressione JavaScript.

  `PercentEncoded:<text>`: testo codificato in percentuale.

  `UUID`: genera un nuovo UUID.

### Elenco degli strumenti predefiniti

Molti strumenti sono compresi per impostazione predefinita, ad ogni modo, qualora ne avessi altri, contattaci su `(kwrite-devel AT kde.org)` affinché possiamo aggiungerli alla lista. Tutti gli strumenti predefiniti sono visibili nella vista ad elenco per impostazione predefinita, ma essi possono essere modificati a proprio piacimento, inclusa la categoria, oppure essere anche eliminati. Gli strumenti eliminati possono essere aggiunti nuovamente facendo clic sul pulsante Aggiungi nella pagina di configurazione, come descritto qui sopra.

git-cola

git-cola è un client grafico che ti permette di allestire e di depositare facilmente le modifiche. Se installato è disponibile anche da riga di comando, digitando `git-cola`

  `Nome`: git-cola

  `Icona`: git-cola

  `Eseguibile`: git-cola

  `Argomenti`: -r %{Document:Path}

  `Editor dei comandi`: git-cola

gitk

Anche gitk è un client di git, che permette di visualizzare bene la cronologia di git.

  `Nome`: gitk

  `Icona`: git-gui

  `Eseguibile`: gitk

  `Cartella di lavoro`: %{Document:Path}

  `Editor dei comandi`: gitk

git blame

Avvia git blame per seguire facilmente le modifiche di git nel file corrente.

  `Nome`: git blame

  `Eseguibile`: git

  `Argomenti`: gui blame %{Document:FileName}

  `Salva`: Documento corrente

  `Cartella di lavoro`: %{Document:Path}

  `Editor dei comandi`: git-blame

Esegui script di shell

Avvia una console esterna nella quale viene eseguito il documento corrente. Lo script deve indicare l'interprete nella prima riga attraverso una riga shebang tipo `#!/percorso/per/l/interprete`.

  `Nome`: esegui script di shell

  `Icona`: system-run

  `Eseguibile`: konsole

  `Argomenti`: -e sh -c "cd %{Document:Path} && pwd && chmod -vc a+x %{Document:FileName} && ./%{Document:FileName} ; echo Premi un tasto per continuare. && read -n 1"

  `Salva`: Documento corrente

  `Cartella di lavoro`: %{Document:Path}

  `Editor dei comandi`: run-script

Cerca in Google il testo selezionato

Cerca in Google il testo selezionato.

  `Nome`: cerca in Google il testo selezionato

  `Icona`: globe

  `Eseguibile`: xdg-open

  `Argomenti`: "https://www.google.com/search?q=%{Document:Selection:Text}"

  `Editor dei comandi`: google

Inserisci UUID

Inserisci un nuovo UUID ogni volta che questa azione viene invocata.

  `Nome`: inserisci UUID

  `Eseguibile`: echo

  `Argomenti`: %{UUID}

  `Output`: inserisci alla posizione del cursore

  `Editor dei comandi`: uuid

Esegui Clang Format su un file completo

Esegui clang-format sul file corrente del disco. Il documento viene poi ricaricato.

  `Nome`: esegui Clang Format su un file completo

  `Eseguibile`: clang-format

  `Argomenti`: -i %{Document:FileName}

  `Cartella di lavoro`: %{Document:Path}

  `Salva`: Documento corrente

  `Ricarica`: Sì

  `Editor dei comandi`: clang-format-file

Esegui Clang Format sul testo selezionato

Esegui Clang Format solo sul testo selezionato nel documento corrente.

  `Nome`: esegui Clang Format sul testo selezionato

  `Eseguibile`: clang-format

  `Argomenti`: -assume-nomeFile: %{Document:FileName}

  `Cartella di lavoro`: %{Document:Path}

  `Ingresso`: %{Document:Selection:Text}

  `Output`: sostituisci il testo selezionato

  `Editor dei comandi`: clang-format-selection

Anteprima Qt Quick 2 (qmlscene)

Mostra l'anteprima del file QML corrente in qmlscene.

  `Nome`: anteprima Qt Quick 2 (qmlscene)

  `Eseguibile`: qmlscene

  `Argomenti`: %{Document:FileName}

  `Salva`: Documento corrente

  `Cartella di lavoro`: %{Document:Path}

  `Editor dei comandi`: qml-preview

File completo in formato JSON

Formatta l'intero file JSON.

  `Nome`: file completo in formato JSON

  `Icona`: application-json

  `Eseguibile`: jq

  `Argomenti`: %{Document:FileName}

  `Salva`: Documento corrente

  `Cartella di lavoro`: %{Document:Path}

  `Output`: sostituisci il documento corrente

  `Editor dei comandi`: json-format-file

File completo in formato XML

Formatta l'intero file XML.

  `Nome`: file completo in formato JSON

  `Icona`: application-xml

  `Eseguibile`: xmllint

  `Argomenti`: --format %{Document:FileName}

  `Salva`: Documento corrente

  `Cartella di lavoro`: %{Document:Path}

  `Output`: sostituisci il documento corrente

  `Editor dei comandi`: xml-format-file

Estensione per il Navigatore backtrace
Estensione per il Navigatore backtrace

## Estensione per il Navigatore backtrace

### Usare l'estensione Navigatore backtrace

Questa estensione è destinata più agli sviluppatori che agli utenti: mostra in uno strumento visivo di Kate il backtrace consegnato da gdb in una vista a elenco: facendo clic su di un elemento si apre il file selezionato al numero di riga corretto. Funziona per i backtrace generati sulla tua macchina, ma funzionerà anche sui backtrace di altre persone, cioè verrà trovato `/home/dummy/qt-copy/…/qwidget.cpp` anche su altre macchine. Affinché questo funzioni devi indicizzare le cartelle in cui è localizzato il codice sorgente.

A volte ci sono più file con lo stesso nome, ad es.

`kdegraphics/okular/generators/dvi/config.h`
`kdepim-runtime/resources/gmail/saslplugin/config.h`

Per selezionare quello giusto l'estensione prende le ultime due parti dell'URL, che in questo caso sarebbero

`dvi/config.h`
`saslplugin/config.h`

E quindi di solito l'estensione trova quello giusto.

L'indicizzazione di master e di altri rami porterà ovviamente ad un conflitto.

### Configurazione

Aggiungi le cartelle che contengono il codice sorgente nella pagina di configurazione.

Configura i percorsi nella vista dello strumento di navigazione Backtrace

Un clic su OK fa iniziare l'indicizzazione; apri lo strumento visivo Navigatore Backtrace quando questa finisce.

Ora puoi caricare un backtrace dagli appunti (ad es., quando fai clic su Copia negli appunti in DrKonqi), o da un file.

Estensione di compilazione
Estensione di compilazione

## Estensione di compilazione

Salma Sultana

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

### Introduzione

L'estensione di compilazione ti permette di eseguire azioni come la generazione, la pulizia e la compilazione di un progetto.

### Usare l'estensione di compilazione

L'estensione di compilazione aggiunge la vista dello strumento Output compilazione in basso, ed un menu Compila nella barra dei menu. La vista dello strumento può essere usata per configurare le impostazioni degli obiettivi della compilazione, mentre il menu può essere usato per effettuare le azioni di generazione, di pulizia e di compilazione.

La vista dello strumento Output compilazione ha due schede:

- Impostazioni obiettivo

- Output

#### Scheda delle impostazioni degli obiettivi

La scheda delle impostazioni dell'obiettivo può essere usata per configurare i vari obiettivi della compilazione e per definire gli insiemi degli obiettivi.

Per cambiare i nomi o i comandi fai doppio clic sulle voci nella tabella e usa la casella a tendina per selezionare l'insieme degli obiettivi attivi; se invece spunti la casella davanti ad un obiettivo, allora lo definisci come predefinito.

Un nuovo insieme di obiettivi contiene molte opzioni di configurazione:

Cartella di lavoro

  Qui puoi impostare il percorso del progetto; lascialo vuoto se vuoi usare la cartella in cui si trova il documento corrente.

Compila

  Questa opzione ti permette di definire il comando di compilazione; l'impostazione predefinita è make.

Pulisci

  Questa opzione ti permette di definire il comando di pulizia; l'impostazione predefinita è make clean.

Configurazione

  Questa opzione permette di definire il comando di configurazione; l'impostazione predefinita è cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr/local ../.

In alto questa estensione ha una barra degli strumenti, con i seguenti pulsanti:

Compila l'obiettivo selezionato
Aggiungi un nuovo obiettivo di compilazione
Crea un nuovo insieme di obiettivi
Copia un comando o un insieme di obiettivi
Elimina il comando o l'insieme degli obiettivi attuali

#### Scheda dell'output

La scheda Output mostra l'output della console generato dall'ultimo comando.

Usa il cursore presente nella parte superiore per mostrare o nascondere alcune categorie di output:

Output compilazione completo, Output compilazione ottimizzato, Errori ed avvisi oppure Solo errori

Ogni riga contiene un messaggio e, se disponibili, il nome del file e il numero di riga. Facendo clic sull'errore o sull'avviso vieni portato al file appropriato, e il cursore si trova già sulla riga corrispondente.

Per andare all'errore precedente premi Alt+Shift+←, mentre per andare al successivo premi Alt+Shift+→.

### Struttura del menu

Compila → Seleziona obiettivo...

  Seleziona da un elenco di obiettivi configurato dall'utente.

Compila → Compila l'obiettivo predefinito

  Compila l'obiettivo definito come predefinito nell'insieme degli obiettivi attivi.

Compila → Compila l'obiettivo precedente

  Passa al precedente obiettivo configurato dall'utente.

Compila → Ferma

  Ferma la compilazione di un obiettivo.

Compila → Errore precedente (Ctrl+Alt+←)

  Sposta il cursore sull'errore precedente nel documento.

Compila → Errore successivo (Ctrl+Alt+→)

  Sposta il cursore sull'errore successivo nel documento.

### Ringraziamenti e riconoscimenti

L'estensione di compilazione di Kate è stata scritta da Kåre Särs.

Ringraziamenti speciali vanno alla partecipante del Google Code-In 2011, Salma Sultana, per aver scritto la gran parte di questa sezione.

Estensione di chiusura per gruppo
Estensione di chiusura per gruppo

## Estensione di chiusura per gruppo

### Introduzione

Questa estensione ti permette di chiudere un gruppo di documenti in base alla loro estensione e al loro percorso.

### Usare l'estensione di chiusura per gruppo

Assumendo che tu abbia questi documenti aperti in Kate:

/tmp/subfolder/test.h
/tmp/test.cpp
/tmp/test.txt

Allora hai le seguenti opzioni per chiudere i documenti, come visualizzato nella schermata successiva:

Usa la casella nell'ultima voce della lista per abilitare o disabilitare una finestra di conferma. Le opzioni selezionate saranno applicate ad entrambe le azioni di chiusura.

### Struttura del menu

File → Chiudi tranne

  Chiude tutti i documenti tranne quelli con il percorso o l'estensione selezionati dal sotto-menu.

File → Chiudi simili

  Chiude tutti i documenti con il percorso o l'estensione selezionati nel sotto-menu.

Estensione Selettore di colore
Estensione Selettore di colore

## Estensione Selettore di colore

### Introduzione

Questa estensione aggiunge nelle righe del testo un'anteprima colore/selettore (ad es., `#FFFFFF`, `bianco`).

Per caricare questa estensione apri la finestra di configurazione di Kate in Impostazioni → Configura Kate..., seleziona quindi Selettore di colore e chiudi la finestra.

### Configurazione

Nella pagina delle impostazioni del Selettore di colore nella configurazione di Kate è possibile configurare le seguenti impostazioni del comportamento dell'estensione.

Mostra l'anteprima per i nomi dei colori noti

  Se mostrare il selettore di colore per i nomi dei colori noti (ad es., `azzurro`). Vedi questa pagina per l'elenco dei colori.

Metti l'anteprima dopo il colore del testo

  Se mettere l'anteprima nelle righe del testo dopo il colore del testo.

Corrispondenza coi colori esadecimali

  Qui puoi scegliere le migliori opzioni per l'abbinamento dei colori utilizzato nel tuo codice.

Parentesi colorate
Parentesi colorate

## Parentesi colorate

### Introduzione

L'estensione parentesi colorate colora le coppie di parentesi corrispondenti con dei colori diversi, in modo da migliorare la leggibilità. Tuttavia, non tutte le parentesi vengono colorate: ad esempio, una la cui apertura o chiusura corrispondente non è visibile verrà ignorata. Allo stesso modo, l'unica coppia di parentesi su una riga non verrà colorata.

### Configurazione

L'estensione non fornisce nessuna configurazione.

Estensione CTags
Estensione CTags

## Estensione CTags

### Introduzione

CTags genera un file indice (o tag) di oggetti del linguaggio trovati nei file sorgente, che permette a queste voci di essere velocemente e facilmente localizzate da Kate per mezzo di questa estensione.

Un tag è un oggetto del linguaggio per il quale è disponibile una voce indice (o in alternativa la voce indice creata per quell'oggetto).

La generazione di tag è supportata per questi linguaggi di programmazione.

### Configurazione

L'estensione CTags usa due diversi file di banca dati per l'indice.

Nella pagina delle impostazioni di CTags nella configurazione di Kate puoi aggiungere o rimuovere le cartelle contenenti il codice sorgente e rigenerare la banca dati comune di CTags.

#### Indice comune

Configurare la banca dati globale di CTags

In basso alla pagina delle impostazioni puoi adattare il comando CTags.

Per ulteriori informazioni su tutte le opzioni disponibili leggi le pagine man di CTags, che sono presenti nel KHelpCenter; puoi anche digitare l'URL man:/ctags direttamente in Konqueror

L'indicizzazione inizia facendo clic su Aggiorna; quando finisce chiudi la finestra.

#### Sessione di indicizzazione

Per configurare la sessione di indicizzazione apri la vista CTags.

Fonti indicizzazione

  In questa scheda puoi aggiungere o rimuovere le cartelle contenenti il codice sorgente e rigenerare manualmente la banca dati specifica per la sessione di CTags.

Banca dati
  Configurare la banca dati per la sessione di CTags

  Seleziona un altro file di banca dati di CTags, configura i comandi di CTags oppure ripristina quelli predefiniti.

### Utilizzare l'estensione CTags

Metti il puntatore del mouse sugli oggetti del linguaggio come le funzioni, i simboli ecc. a cui sei interessato e seleziona una delle azioni dal menu CTags: salterai alla riga del file dove l'oggetto è stato definito o dichiarato.

Le azioni del menu CTags non hanno nessuna scorciatoia predefinita; per configurarle usa l'editor di scorciatoie da tastiera.

In alternativa puoi usare il campo di ricerca nella scheda Ricerca della vista CTags.

Digitando dei caratteri nel campo di ricerca, questa inizierà: saranno visualizzati i nomi corrispondenti degli oggetti del linguaggio, come funzioni, classi, simboli ecc., insieme al tipo ed al nome del file.

Seleziona una voce nella lista per saltare nel file sorgente alla riga corrispondente.

### Struttura del menu

CTags → Torna indietro di un passo

  Torna indietro all'ultimo tag visitato nella cronologia.

CTags → Cerca testo corrente

  Apre la scheda Ricerca della vista CTags e visualizza tutti gli oggetti del linguaggio corrispondenti all'attuale selezione di testo nella lista.

CTags → Vai alla dichiarazione

  Se il cursore è su una definizione di oggetto allora il documento contenente la dichiarazione dello stesso si aprirà, se necessario, e sarà attivata la sua vista, con il cursore posizionato all'inizio della dichiarazione.

CTags → Vai alla definizione

  Se il cursore è su una dichiarazione di oggetto, questa aprirà il documento contenente la dichiarazione dello stesso, se necessario, e attiverà la sua vista, con il cursore all'inizio della definizione.

Estensione per l'anteprima del documento
Estensione per l'anteprima del documento

## Estensione per l'anteprima del documento

### Introduzione

L'estensione abilita un'anteprima in diretta del documento di testo attualmente modificato; questo avviene nella barra laterale nel suo formato finale. Quindi il risultato sarà immediatamente visibile vicino al testo sorgente quando, ad esempio, modifichi un testo Markdown o un'immagine SVG.

Per la visualizzazione viene utilizzata l'estensione KParts che è attualmente selezionata come preferita per il tipo MIME del documento. L'anteprima non è quindi possibile se non c'è nessuna estensione KParts per quel tipo.

Per cambiare l'estensione preferita apri il modulo Associazioni dei file nelle Impostazioni di sistema e modifica l'Ordine di preferenza dei servizi nella scheda Integrazione.

Tabella 4.1. Alcune estensioni KParts disponibili

Tipo MIME | Estensione KParts
Testo Markdown | KMarkdownWebViewPart oppure OkularPart
Immagine SVG | SVGPart
File UI di Qt™ | KUIViewerPart
File grafi DOT | KGraphviewerPart

### Struttura del menu

Visualizza → Viste degli strumenti → Mostra anteprima

  Mostra o nasconde in una barra laterale l'anteprima del documento di Kate.

### Interfaccia

I pulsanti nella parte alta della finestra dell'anteprima forniscono queste azioni:

- Blocca l'anteprima su un certo documento. Selezionando questa opzione ti assicuri che, se il fuoco passa ad un altro documento nella stessa finestra di Kate, l'anteprima non seguirà quel documento ma rimarrà invece sul precedente.

- Abilita o disabilita l'aggiornamento del contenuto dell'anteprima del documento corrente

- Aggiorna manualmente il contenuto dell'anteprima del documento corrente

- Un menu a discesa con delle azioni dall'estensione KParts

Estensione per il selettore dei documenti
Estensione per il selettore dei documenti

## Estensione per il selettore dei documenti

### Struttura del menu

Visualizza → Ultime viste usate (Ctrl+Tab), Visualizza → Ultime viste usate (Opposto) (Ctrl+Shift+Tab)

  Apre una lista con i documenti visualizzati di recente:

  Tieni il tasto Ctrl premuto ed usa Tab per scorrere avanti nell'elenco; premi anche il tasto Shift per invertire la direzione.

  Tieni premuta la scorciatoia Ctrl+Tab e potrai usare i tasti ↑, ↓, ↖ o Fine per spostarti nella lista. Se invece premi più volte un carattere, allora passerai su tutte le voci della lista che cominciano con quella lettera; rilasciando la scorciatoia andrai al documento che hai selezionato.

Selettore dei file
Selettore dei file

## Selettore dei file

Il selettore dei file è un visore di cartelle, che ti permette di aprire i file da una cartella visualizzata nel riquadro attuale.

### Struttura del menu

Visualizza → Viste degli strumenti → Mostra il selettore dei file

  Mostra o nasconde il selettore dei file di Kate.

### Interfaccia

Dall'alto al basso, il selettore dei file è composto dai seguenti elementi:

Una barra degli strumenti

  Questa contiene i pulsanti standard per la selezione:

  Indietro

    Provoca l'esecuzione del comando cd nella cartella precedente nella cronologia. Questo pulsante è disabilitato se la cartella in questione non esiste.

  Avanti

    Provoca l'esecuzione del comando cd nella cartella successiva nella cronologia. Questo pulsante è disabilitato se la cartella in questione non esiste.

  Segnalibri

    Apre un sotto-menu da cui puoi modificare o aggiungere i segnalibri, e anche aggiungere una nuova cartella di segnalibri.

  Cartella del documento attuale

    Questo pulsante fa eseguire alla vista delle cartelle il comando cd nella posizione in cui è contenuto il documento attualmente attivo, se possibile. Questo pulsante è disabilitato se il documento attivo è un nuovo file che non è ancora stato salvato, oppure se la cartella in cui risiede non è individuabile.

  Opzioni
    Vista breve

      Mostra solo i nomi dei file.

    Vista dettagliata

      Visualizza il Nome, la Data e la Dimensione dei file.

    Vista ad albero

      Come la vista breve, ma le cartelle possono essere espanse per visualizzarne i contenuti.

    Vista ad albero dettagliata

      Anche questa permette di espandere le cartelle, ma mostra le colonne aggiuntive disponibili nella vista dettagliata.

    Mostra i file nascosti

      Mostra i file che sono normalmente nascosti dal sistema operativo.

    Sincronizza automaticamente con il documento attuale

      Quando questa opzione è abilitata il selettore dei file eseguirà automaticamente il comando cd nella cartella del documento attualmente aperto nell'area di modifica ogni volta che cambia.

Una voce per la posizione

  Questo mostra il percorso di navigazione della cartella attualmente aperta, come in Dolphin: puoi fare clic su qualsiasi cartella per sfogliarla, o fare clic su una delle frecce alla sinistra di una cartella per selezionare qualsiasi cartella sottostante. Puoi anche effettuare selezioni dall'elenco delle tue Risorse facendo clic sull'icona in fondo a sinistra nel percorso di navigazione, che mostra un'icona rappresentante la Risorsa attuale.

  Puoi anche fare clic alla destra del percorso di navigazione per trasformarlo in una casella di testo; qui puoi digitare il percorso di una cartella da sfogliare. La voce URL mantiene una lista di tutti i percorsi precedentemente inseriti: per sceglierne uno usa il pulsante con la freccia alla sua destra.

  ### Suggerimento

  Il campo URL ha il completamento automatico dei nomi delle cartelle, che può essere impostato utilizzando il tasto destro del mouse sul campo di inserimento.

Una vista delle cartelle

  Questa è una vista standard delle cartelle di KDE.

Una voce di filtro

  La voce di filtro ti permette di definire un filtro per i file visualizzati nella vista delle cartelle. Il filtro usa gli schemi standard; questi devono essere separati da spazi, per esempio: `*.cpp *.h *.moc`.

  Inserisci un asterisco singolo `*` per visualizzare tutti i file.

  La voce di filtro salva gli ultimi dieci filtri inseriti durante la sessione: per usarne uno fai clic sul pulsante con la freccia a destra del campo di inserimento, e seleziona quello che desideri. Puoi disattivare il filtro premendo il pulsante Pulisci il testo, che si trova alla sinistra del pulsante di auto-completamento a freccia.

### Configurazione

Questa estensione può essere configurata nella pagina del Selettore dei file della configurazione di Kate.

Barra degli strumenti

  Configura i pulsanti della barra del selettore dei file spostando quelli che desideri nell'elenco Azioni selezionate, e ordinali con i pulsanti a freccia di fianco all'elenco.

L'elenco dei documenti
L'elenco dei documenti

## L'elenco dei documenti

### Introduzione

L'elenco dei documenti mostra la lista di tutti i documenti attualmente aperti in Kate. Per indicarne lo stato, i file modificati avranno una piccola icona a forma di dischetto alla loro sinistra.

In alto all'elenco dei documenti c'è una barra degli strumenti, che ha i seguenti pulsanti:

Crea un nuovo documento
Apre un documento esistente
Il documento precedente
Il documento successivo
Salva il documento attuale
Salva il documento attuale con un nuovo nome

L'elenco dei documenti compare come impostazione predefinita nella Modalità ad albero, che mostra la struttura delle cartelle attorno a tutti i documenti aperti. È disponibile anche la Modalità a lista, che mostra invece un semplice elenco dei documenti aperti. Puoi cambiare la modalità facendo clic destro sull'elenco e selezionando la Modalità di visualizzazione dal menu.

Se due o più file (che si trovano in cartelle diverse) hanno lo stesso nome e sono aperti nella Modalità elenco, al nome del secondo file e dei successivi verrà anteposto un «(2)», e così via. Il suggerimento del file ti mostrerà comunque il suo nome con il percorso completo, permettendoti così di scegliere quello che desideri.

Fai clic sul nome del documento nella lista per visualizzare un documento nel riquadro attivo.

Il menu contestuale ha alcune azioni in comune con il menu File.

Ci sono anche le azioni proprie di un gestore di file, che servono per rinominare o per eliminare i file; con Copia posizione potrai copiare negli appunti l'intero percorso del documento.

Facendo clic con il tasto destro sulla lista, e selezionando una voce dal menu Ordina per, potrai ordinare l'elenco in diversi modi. Le opzioni sono:

Nome documento

  Elenca i documenti alfabeticamente per nome.

Percorso documenti

  Elenca i documenti alfabeticamente in base al loro percorso.

Ordine di apertura

  Elenca i documenti in base all'ordine di apertura.

L'elenco dei documenti visualizza, come impostazione predefinita, la cronologia, ombreggiando il colore dello sfondo dei documenti più recenti: se il documento viene modificato gli viene miscelato un altro colore. I documenti più recenti hanno colori più vivi, quindi potrai trovare facilmente quelli su cui stai lavorando. Questa funzionalità può essere disabilitata dalla pagina Documenti del pannello di configurazione.

La posizione predefinita dell'elenco dei documenti nella finestra di Kate è alla sinistra dell'area dell'editor.

### Struttura del menu

Visualizza → Documento precedente (Alt+↑)

  Apre il documento visualizzato sopra il documento attualmente aperto nell'elenco dei documenti.

Visualizza → Documento successivo (Alt+↓)

  Apre il documento visualizzato sotto il documento attualmente aperto nell'elenco dei documenti.

Visualizza → Mostra attivo

  Mostra il documento attualmente aperto nell'elenco dei documenti.

### Configurazione

Sfumature di sfondo

  Questa sezione ti permette di abilitare o disabilitare la visualizzazione delle sfumature dello sfondo nelle tue attività recenti, e, se abilitata, di scegliere quali colori usare.

Ordina per

  Imposta il tipo di ordinamento da dare ai documenti; può anche essere impostato con il menu che appare facendo clic con il tasto destro del mouse nell'elenco dei documenti.

Modalità di visualizzazione

  Ci sono due opzioni che influenzano la visualizzazione della vista dei documenti: l'opzione Vista ad albero li visualizzerà in un albero, sotto le cartelle in cui si trovano, mentre l'opzione Vista a elenco li visualizzerà come un semplice elenco.

Mostra il percorso completo

  Quando la vista ad albero e questa opzione sono abilitate, le voci delle cartelle visualizzate nella vista dei documenti mostreranno il percorso completo della cartella, oltre al nome. Non ha effetto nella vista a elenco.

Mostra la barra degli strumenti

  Quando sono abilitate Vista ad albero e questa opzione, sull'elenco dei documenti viene visualizzata una barra degli strumenti con azioni come Salva. Deselezionala se la barra degli strumenti dovrebbe invece essere nascosta.

Mostra il pulsante Chiudi

  Se questa opzione è abilitata, Kate al passaggio col mouse mostrerà un pulsante di chiusura per i documenti aperti.

Estensione per GDB
Estensione per GDB

## Estensione per GDB

Martin Gergov

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

### Introduzione

L'estensione per GDB di Kate fornisce una semplice interfaccia al popolare debugger del progetto GNU.

### Importante

Una precedente esperienza con GDB è caldamente raccomandata; visita il sito Web di GDB per maggiori informazioni sul suo uso.

Puoi abilitare l'estensione per GDB nella sezione delle estensioni della configurazione di Kate.

Affinché l'estensione funzioni correttamente devi avere un file sorgente (di un qualsiasi tipo supportato da GDB), ed un eseguibile.

### Suggerimento

Se compili usando gcc o g++, potresti aver bisogno di usare l'argomento da riga di comando `-ggdb`.

Fatte queste preparazioni apri il file sorgente in Kate, inserisci il percorso all'eseguibile nella scheda Impostazioni della vista dello strumento Vista di debug e seleziona dal menu Debug → Avvia il debug per cominciare.

### Menu e struttura della barra degli strumenti

Tutte queste opzioni sono disponibili nei menu di Kate, e molte sono disponibili anche nella barra degli strumenti di debug.

Visualizza → Viste degli strumenti → Mostra Vista di debug

  Mostra una vista contenente l'output di GDB, la riga di comando di GDB usata, ed altre impostazioni.

Visualizza → Viste degli strumenti → Mostra locali e pila

  Mostra un elenco di tutte le variabili attualmente in memoria, i loro valori ed un backtrace di GDB.

Debug → Obiettivi

  Un sotto-menu contenente un elenco di obiettivi (eseguibili).

Debug → Avvia il debug

  Avvia GDB con un obiettivo.

Debug → Termina / interrompi il debug

  Interrompe GDB.

Debug → Riavvia il debug

  Riavvia GDB.

Debug → Commuta punto di interruzione / interrompi

  Imposta un punto di interruzione alla posizione attuale del cursore.

Debug → Entra

  Esegui l'istruzione attuale (sarà effettuato il debug della chiamata a funzione).

Debug → Passa oltre

  Esegui l'istruzione attuale (non sarà effettuato il debug della chiamata a funzione).

Debug → Esci

  Riprende l'esecuzione fino alla conclusione del programma in esecuzione.

Debug → Sposta contatore dei programmi

  Sposta contatore dei programmi (prossima esecuzione).

Debug → Esegui fino al cursore

  Esegue il programma fino a raggiungere l'attuale posizione del cursore.

Debug → Continua

  Ignora qualsiasi punto di interruzione ed esegue il programma fino alla sua conclusione (corretta o meno).

Debug → Stampa valore

  Stampa il valore della variabile attualmente indicata dal cursore.

Impostazioni → Barre mostrate → Estensione GDB

  Mostra la barra degli strumenti di debug.

### Vista di debug

La vista dello strumento Vista di debug è composta da diverse schede:

Uscita di GDB

  Contiene l'uscita di GDB ed una riga di comando per GDB.

  La scheda Uscita mostra il risultato generato sulla console da una sessione di debug.

Impostazioni
  Eseguibile

    Percorso dell'obiettivo (l'eseguibile) su cui eseguire il debug.

  Cartella di lavoro

    La cartella di lavoro attuale fornita all'obiettivo.

  Argomenti

    Argomenti passati al programma.

  Mantieni attivazione

    Mantiene attiva la riga di comando di GDB.

  Ridireziona I/O

    Apre una nuova scheda I/O nella Vista di debug, dove puoi vedere l'uscita ed inserire gli ingressi al programma in esecuzione.

  La finestra Impostazioni, che mostra la configurazione di una sessione di debug.

I/O

  Contiene un'area che mostra l'uscita del programma attuale, ed una riga di comando dalla quale puoi passare degli ingressi.

  La scheda I/O, che mostra l'uscita di un semplice programma di prova.

### Pila di chiamate e Locali

La vista dello strumento Pila delle chiamate contiene un elenco di backtrace formattati restituiti da GDB.

La vista dello strumento Pila delle chiamate dell'estensione GDB.

La vista dello strumento Locali mostra un elenco di tutte le variabili attualmente in memoria del programma, ed i loro valori corrispondenti.

La vista dello strumento Locali dell'estensione GDB.

### Ringraziamenti e riconoscimenti

Ringraziamenti speciali vanno al partecipante del Google Code-In 2011, Martin Gergov, per aver scritto la maggior parte di questa sezione.

Estensione di progetto
Estensione di progetto

## Estensione di progetto

### Introduzione

L'idea di base dell'estensione di progetto è quella di avere una lista strutturata di file che appartengono al progetto, con le seguenti proprietà:

1. Fornire una vista strutturata dei file

2. Rendere semplice e molto veloce l'apertura ed il passaggio tra i vari progetti

3. Supportare la ricerca e la sostituzione nel progetto

4. Fornire un semplice completamento automatico

5. Rendere semplice l'apertura rapida dei file del progetto

6. Supportare la compilazione dei progetti

### Mostrare una vista strutturata dei file

Apri un file di un progetto una volta che l'estensione di progetto è caricata nella pagina di configurazione di Kate: ti apparirà una barra laterale elencante tutti i progetti, così come i loro file, in questo modo:

Come puoi vedere, «Kate» è il progetto attualmente attivo, ed il suo contenuto è elencato nella vista ad albero; facendo clic sui file nella vista, questi si apriranno nell'editor. Viene inoltre fornito un menu contestuale con il quale puoi aprire i file con altre applicazioni, ad esempio i file `.ui` con Qt Designer.

Puoi filtrare le voci: digita una parte del nome del file che stai cercando nella barra di ricerca che è in fondo alla lista.

### Passaggio ad un altro progetto

L'idea è che non devi mai aprire un progetto manualmente, questo non è affatto supportato. Quindi, quello che succede quando apri un file è che l'estensione di progetto scansiona la sua cartella e quelle superiori alla ricerca di un file `.kateproject`: se lo trova, il progetto viene caricato automaticamente.

Inoltre l'estensione di progetto cambierà automaticamente l'attuale progetto se apri con Kate un documento che appartiene ad un altro progetto: in questo modo il progetto pertinente sarà attivo sempre. Naturalmente puoi anche cambiare il progetto attualmente attivo usando la casella combinata.

### Ricerca e sostituzione nei progetti

Kate dispone di un'estensione di ricerca e sostituzione, che si trova nella barra laterale in basso: se c'è un progetto caricato apri la barra laterale Cerca e Sostituisci e passa alla modalità di ricerca e sostituzione nel progetto attuale:

### Completamento automatico semplice

Grazie alla conoscenza di tutti i file che appartengono ad un progetto, l'estensione di progetto fornisce un semplice servizio di auto-completamento basato su CTags: se c'è un progetto aperto, CTags analizza in un processo in background tutti i file del progetto, e salva le informazioni CTags in `/tmp`; questo file viene poi utilizzato per popolare la finestra a comparsa del completamento automatico di Kate.

Di contro, senza questo auto-completamento Kate è capace solo di mostrare le voci di auto-completamento basandosi solo sulle parole del file attuale. In questo modo l'auto-completamento fornito dall'estensione di progetto è molto più potente.

Una finestrella passiva ti avviserà sull'eventuale mancanza di CTag. Degno di nota è il fatto che il file di CTags in `/tmp` viene cancellato alla chiusura di Kate: così l'estensione non inquinerà nessuna cartella con dei file indesiderati.

### Supporto alla compilazione del progetto

Un'altra caratteristica è quella di offrire supporto all'Estensione di compilazione, che così viene configurata correttamente.

### Creare i progetti

#### Caricare i progetti automaticamente

L'estensione di progetto ha una funzionalità di auto-caricamento, che ti consente di leggere la lista dei file dal sistema di controllo della versione. Questa funzionalità deve essere abilitata nelle impostazioni (lo è in maniera predefinita):

#### Creare i progetti manualmente

Devi solo creare un file `.kateproject` nella cartella principale del progetto. Ad esempio, il file `.kateproject` di «Kate» apparirà così:

    {
      "name": "Kate",
      "files": [
        {
          "git": 1
        }
      ]
    }

Il contenuto del file è scritto con la sintassi JSON: il nome del progetto è «Kate», ed i file in esso contenuti dovrebbero essere letti da Git.

Al posto di `git` sono supportati anche subversion, attraverso `svn`, e mercurial con `hg`. Se non vuoi leggere dei file da un sistema di controllo di versione puoi semplicemente invocare kate dalla riga di comando come:

    kate /path/to/folder

oppure puoi caricare ricorsivamente i file dalle cartelle, come di seguito:

    {
      "name": "Kate",
      "files": [
        {
          "directory": "kate",
          "filters": [
            "*.cpp",
            "*.h",
            "*.ui",
            "CMakeLists.txt",
            "Find*.cmake"
          ],
          "recursive": 1,
          "hidden": 1
        }
      ],
      "exclude_patterns" : [
        "^build/.*"
      ]
    }

Qui le sotto-cartelle e i filtri definiscono qual è parte del progetto. Puoi anche mischiare controllo della versione e file in base ai filtri. I file nascosti non verranno recuperati se l'opzione `"hidden"` è 0. `"exclude_patterns"` è un elenco di modelli di espressioni regolari che possono essere usati per escludere file e cartelle dall'albero del progetto. In questo esempio verranno esclusi tutti i file e le cartelle in una cartella `build`.

Se vuoi aggiungere il supporto per la compilazione, allora puoi scrivere un `.kateproject` come questo:

    {
      "name": "Kate",
      "files": [
        {
          "git": 1
        }
      ],
      "build": {
        "directory": "build",
        "build": "make all",
        "clean": "make clean",
        "install": "make install",
        "targets": [
          {
            "name": "all",
            "build_cmd": "ninja"
            "run_cmd": "./bin/kate"
          },
          {
            "name": "kate",
            "build_cmd": "ninja kate-bin"
          }
        ]
      }
    }

Gli obiettivi specificati sopra appariranno quindi nell'estensione di compilazione sotto "Obiettivi dell'estensione di progetto ". Se il vettore `"targets"` è specificato, allora `"build"`, `"clean"` and `"install"` vengono ignorati. Ogni elemento nel vettore specifica un obiettivo:`"name"` è il nome dell'obiettivo, `"build_cmd"` verrà utilizzato per compilare l'obiettivo, `"run_cmd"` verrà usato per eseguire l'obiettivo. Il più importante di tutti è `"directory"`, che è dove verrà eseguito il comando.

Nel caso tu abbia un file `.kateproject` gestito da un sistema di controllo versione, ma avessi bisogno di modificare la configurazione per un particolare spazio di lavoro, puoi salvare queste modifiche in un file separato chiamato `.kateproject.local`. Il contenuto di questo file avrà la precedenza su `.kateproject`.

### Progetto attuale

Usando Progetti → Vai a (Alt+1) potrai aprire il Progetto attuale, che è visualizzato in basso nella finestra dell'editor ed ha quattro schede:

Pannello del terminale

  Un Emulatore di terminale che parte dalla cartella principale del progetto.

Indice del codice

  La digitazione di caratteri nella barra di ricerca inizierà la ricerca, e visualizzerà i corrispondenti nomi delle funzioni, delle classi, dei simboli ecc., insieme al tipo, al nome del file e al numero di riga.

  Seleziona una voce nella lista per saltare nel file sorgente alla riga corrispondente.

Analisi del codice

  Fai clic su Inizia analisi per iniziare un'analisi statica del codice C e C++ usando cppcheck, e per generare un rapporto mostrante il nome del file, il numero delle righe, la gravità (stile, avvisi ecc.) e il problema trovato.

  Seleziona una voce nella lista per saltare nel file sorgente alla riga corrispondente.

Note

  Il testo inserito in questa scheda sarà salvato nel file `.kateproject.notes`.

### Il menu Progetti

Il menu Progetti ti permette di passare tra i progetti attualmente aperti. Viene visualizzato dall'estensione dei progetti.

Progetti → Indietro (Ctrl+Alt+←)

  Passa al progetto precedente.

Progetti → Avanti (Ctrl+Alt+→)

  Passa al progetto successivo

Progetti → Vai a (Alt+1)

  Apre la vista del Progetto attuale nella parte bassa della finestra di modifica.

Estensione client LSP
Estensione client LSP

## Estensione client LSP

L'estensione client LSP fornisce molte funzionalità per i linguaggi, quali il completamento e la navigazione del codice o la ricerca di riferimenti basata sul Language Server Protocol.

Una volta che hai abilitato il client LSP, nella pagina delle estensioni della finestra di configurazione di Kate te ne apparirà un'altra, chiamata Client LSP.

### Struttura del menu

Se appropriato, nella spiegazione seguente viene menzionato anche un comando LSP corrispondente, la cui documentazione può quindi fornire informazioni e interpretazioni aggiuntive, sebbene possa variare a seconda del linguaggio effettivo. L'espressione "simbolo corrente" si riferisce al simbolo corrispondente alla posizione corrente del cursore, come determinato dal linguaggio e dall'implementazione del server.

Client LSP → Vai alla definizione

  [textDocument/definition] Vai alla definizione attuale del simbolo.

Client LSP → Vai alla dichiarazione

  [textDocument/declaration] Vai alla dichiarazione attuale del simbolo.

Client LSP → Vai alla definizione del tipo

  [textDocument/definition] Vai alla definizione del tipo di simbolo corrente.

Client LSP → Trova riferimenti

  [textDocument/references] Trova i riferimenti al simbolo attuale.

Client LSP → Trova implementazioni

  [textDocument/references] Trova le implementazioni del simbolo corrente.

Client LSP → Evidenzia

  [textDocument/documentHighlight] Evidenzia i riferimenti ai simboli correnti nel documento attuale.

Client LSP → Finestrella informativa

  [textDocument/hover] Finestrella informativa del simbolo attuale.

Client LSP → Formatta

  [textDocument/formatting] [textDocument/rangeFormatting] Formatta l'attuale documento o l'attuale selezione.

Client LSP → Rinomina

  [textDocument/rename] Rinomina il simbolo attuale.

Client LSP → Soluzione rapida

  [textDocument/codeAction, workspace/executeCommand] Calcola e applica una soluzione rapida per una diagnostica sulla posizione (o sulla linea) corrente.

Client LSP → Mostra la documentazione di completamento selezionata

  Mostra la documentazione dell'elemento selezionato nell'elenco di completamento.

Client LSP → Abilita l'aiuto sulle firme con l'auto-completamento

  Mostra anche l'aiuto sulle firme nell'elenco di completamento.

Client LSP → Includi la dichiarazione nei riferimenti

  Richiede di includere la dichiarazione del simbolo quando ne vengono richiesti i riferimenti.

Client LSP → Aggiungi le parentesi al completamento della funzione

  Aggiunge automaticamente una coppia di parentesi dopo il completamento di una funzione.

Client LSP → Mostra la finestrella informativa

  Mostra la finestrella informativa sul cursore al passaggio del mouse. Indipendentemente da questa impostazione la richiesta può sempre essere inizializzata manualmente.

Client LSP → Formattazione durante la digitazione

  [document/onTypeFormatting] Formatta parti del documento alla digitazione di alcuni caratteri di attivazione. Ad esempio questo si potrebbe applicare ai rientri nelle nuove righe, oppure a qualsiasi altra cosa stabilita dal server LSP. Nota che gli script dell'editor per il rientro potrebbero cercare di fare la stessa cosa (a seconda della modalità), perciò non è raccomandabile aver abilitato entrambi allo stesso tempo.

Client LSP → Sincronizzazione incrementale del documento

  Invia delle modifiche parziali del documento per aggiornare il server piuttosto che l'intero documento di testo (se supportato).

Client LSP → Evidenzia posizione di arrivo

  Emette un segnale visivo transitorio dopo aver eseguito un arrivo in una posizione (di una definizione, di una dichiarazione, ecc).

Client LSP → Mostra le notifiche di diagnostica

  [textDocument/publishDiagnostics] Elabora e mostra le notifiche di diagnostica inviate dal server.

Client LSP → Mostra i punti salienti della diagnostica

  Aggiungi i punti salienti del testo per gli intervalli indicati nella diagnostica.

Client LSP → Mostra i segni di diagnostica

  Aggiungi segni di documento nelle righe indicate dalla diagnostica.

Client LSP → Passa alla scheda di diagnostica

  Passa alla scheda diagnostica nell'estensione dello strumento visivo.

Client LSP → Chiudi tutte le schede non di diagnostica

  Chiude tutte le schede non diagnostiche (ad es. i riferimenti) nell'estensione dello strumento visivo.

Client LSP → Riavvia server LSP

  Riavvia il server LSP del documento corrente.

Client LSP → Riavvia tutti i server LSP

  Ferma tutti i server LSP che saranno quindi (ri)avviati se necessario.

### Supporto ai simboli di arrivo

Il client LSP può aiutarti a saltare a ogni simbolo nel progetto o nel file corrente. Per saltare ai simboli nel file usa lo strumento visivo «Schema del simbolo del client LSP» nel bordo destro di Kate. Lo strumento visivo elenca tutti i simboli che sono trovati dal server nel documento corrente.

#### Configurazione dello schema dei simboli del client LSP

Per impostazione predefinita i simboli vengono ordinati in base alla loro occorrenza nel documento, ma potresti anche ordinarli alfabeticamente. Per farlo, clic destro sullo strumento visivo, poi spunta «Ordina alfabeticamente».

Per impostazione predefinita lo strumento visivo mostra i simboli nella modalità ad albero, tuttavia puoi modificarla in un elenco dal menu contestuale.

#### Supporto ai simboli di arrivo globale

Per saltare ai simboli nel progetto puoi aprire la finestra dei simboli di arrivo usando Ctrl+Alt+p. La finestra è vuota quando si apre, ma non appena inizi a digitare comincia a mostrare i simboli corrispondenti. La qualità delle corrispondenze e della capacità di filtraggio dipende dal server che usi: ad esempio, clangd supporta il filtraggio approssimato, ma altri server potrebbero non supportarlo.

### Altre funzionalità

Il comando per scambiare intestazione e sorgente è supportato. Per farlo in un progetto C o C++ puoi utilizzare l'opzione «Scambia sorgente e intestazione» sia dal menu contestuale che con la scorciatoia F12.

Puoi andare velocemente a un simbolo mettendo il mouse sopra di esso e poi premendo Ctrl più il pulsante sinistro del mouse.

### Configurazione

La pagina di configurazione dell'estensione permette principalmente la configurazione persistente di alcune delle voci di menu di cui sopra. Tuttavia esiste una voce aggiuntiva per specificare il file di configurazione del server: è un file JSON che può essere utilizzato per specificare il server LSP da avviare (e quindi con cui comunicare tramite stdin e stdout). Per comodità sono incluse alcune configurazioni predefinite, che possono essere ispezionate nella pagina di configurazione dell'estensione. Per aiutare nella spiegazione di seguito, viene fornito un estratto di tale configurazione:

    {
        "servers": {
            "bibtex": {
                "use": "latex",
                "highlightingModeRegex": "^BibTeX$"
            },
            "c": {
                "command": ["clangd", "-log=error", "--background-index"],
                "commandDebug": ["clangd", "-log=verbose", "--background-index"],
                "url": "https://clang.llvm.org/extra/clangd/",
                "highlightingModeRegex": "^(C|ANSI C89|Objective-C)$"
            },
            "cpp": {
                "use": "c",
                "highlightingModeRegex": "^(C\\+\\+|ISO C\\+\\+|Objective-C\\+\\+)$"
            },
            "d": {
                "command": ["dls", "--stdio"],
                "url": "https://github.com/d-language-server/dls",
                "highlightingModeRegex": "^D$"
            },
            "fortran": {
                "command": ["fortls"],
                "rootIndicationFileNames": [".fortls"],
                "url": "https://github.com/hansec/fortran-language-server",
                "highlightingModeRegex": "^Fortran.*$"
            },
            "javascript": {
                "command": ["typescript-language-server", "--stdio"],
                "rootIndicationFileNames": ["package.json", "package-lock.json"],
                "url": "https://github.com/theia-ide/typescript-language-server",
                "highlightingModeRegex": "^JavaScript.*$",
                "documentLanguageId": false
            },
            "latex": {
                "command": ["texlab"],
                "url": "https://texlab.netlify.com/",
                "highlightingModeRegex": "^LaTeX$"
            },
            "go": {
                "command": ["go-langserver"],
                "commandDebug": ["go-langserver", "-trace"],
                "url": "https://github.com/sourcegraph/go-langserver",
                "highlightingModeRegex": "^Go$"
            },
            "python": {
                "command": ["python3", "-m", "pyls", "--check-parent-process"],
                "url": "https://github.com/palantir/python-language-server",
                "highlightingModeRegex": "^Python$"
            },
            "rust": {
                "command": ["rls"],
                "path": ["%{ENV:HOME}/.cargo/bin", "%{ENV:USERPROFILE}/.cargo/bin"],
                "rootIndicationFileNames": ["Cargo.lock", "Cargo.toml"],
                "url": "https://github.com/rust-lang/rls",
                "highlightingModeRegex": "^Rust$"
            },
            "ocaml": {
                "command": ["ocamlmerlin-lsp"],
                "url": "https://github.com/ocaml/merlin",
                "highlightingModeRegex": "^Objective Caml.*$"
            }
        }
    }

Nota che ciascun «command» può essere un vettore o una stringa (nel qual caso viene divisa in un vettore), inoltre viene considerata anche una voce «global» di livello massimo (vicina a «server»), vedi sotto. Il binario specificato viene cercato nel solito modo, ad es usando `PATH`. Se è installato in posizioni personalizzate, allora l'ultimo metodo potrebbe dover essere esteso. In alternativa si può utilizzare un collegamento (simbolico) o uno script wrapper per una posizione nel `PATH` usuale. Come illustrato sopra, uno può specificare un «percorso» in cui cercare dopo averlo fatto nelle posizioni standard.

Tutte le voci in «command», «root» e «path» sono soggette all'espansione delle variabili.

«HighlightingModeRegex» viene usato per associare la modalità di evidenziazione usata da Kate all'ID del linguaggio del server. Se non viene fornita alcuna espressione regolare, viene utilizzato l'id del linguaggio stesso. Se una voce «documentLanguageId» viene impostata a falso allora non viene fornito al server nessun ID del linguaggio all'apertura del documento. Questo potrebbe dare dei risultati migliori su alcuni server che sono più precisi nel determinare il tipo di documento piuttosto che farlo in base alla modalità di kate.

Dall'esempio qui sopra, il principio è probabilmente chiaro. Inoltre, ciascun oggetto di voce del server può avere anche una voce «initializationOptions», che viene passata al server come parte del metodo «initialize». Se presente, viene passata al server una voce «settings» per mezzo della notifica «workspace/didChangeConfiguration». Sia «completionTriggerCharacters» che «signatureTriggerCharacters» possono essere specificati come oggetto JSON col membro stringa «exclude» oppure «include». Questi verranno usati per, rispettivamente, escludere o aggiungere alcuni caratteri ai rispettivi attuatori impostati come forniti dal server.

Vengono applicate varie fasi di sovrapposizione/unione;

- la configurazione utente (caricata dal file) ha la precedenza sulla configurazione predefinita (interna)

- La voce «lspclient» in `.kateproject` nella configurazione del progetto ha la precedenza su quella qui sopra

- La voce «global» risultante viene utilizzata per integrare (non per sovrascrivere) ogni voce del server

Un'istanza del server viene utilizzata per ogni combinazione (root, servertype). Se «root» viene specificata come un percorso assoluto viene utilizzato così com'è, diversamente è relativo a «projectBase» (come determinato dall'estensione di progetto) se applicabile, oppure è relativo alla cartella del documento. Se non è stato specificato, e se «rootIndicationFileNames» è un vettore, allora viene selezionata una cartella genitore del documento corrente che contiene il file che è selezionato. In alternativa, se «root» non è specificato e «rootIndicationFilePatterns» è un vettore di modelli di file, viene selezionata una cartella genitore del documento corrente che corrisponde al modello di file che è selezionato. Come ultimo ripiego viene selezionata come «root» la cartella home. Per qualsiasi documento la cartella «root» risultante determina se è necessaria o meno un'istanza separata. Se sì, «root» viene passata come rootUri/rootPath.

In generale viene raccomandato di lasciare root non specificata poiché non è così importante per un server (ma dipende dalle tue esigenze). Un numero minore di istanze del server è ovviamente più efficiente e ha anche una visione "più ampia" rispetto a molte istanze separate.

Come menzionato sopra, molte voci sono soggette all'espansione delle variabili. Un'applicazione adatta di essa, associata ad uno «script adattatore», permette la personalizzazione in molte circostanze. Ad esempio, considera uno scenario di sviluppo in Python formato da più progetti (ad esempio repository git), ciascuno con le proprie impostazioni di ambiente virtuale (venv). Usando la configurazione predefinita il server del linguaggio Python non sarà a conoscenza dell'ambiente virtuale. A questo però si può rimediare col seguente approccio: per prima cosa, nell'estensione «User Server Settings» di LSPClient si può inserire il seguente frammento:

    {
            "servers":
            {
                    "python":
                    {
                            "command": ["pylsp_in_env"], ["%{Project:NativePath}"],
                            "root": "."
                    }
            }
    }

La voce principale qui sopra è relativa alla cartella del progetto e garantisce che sia stato avviato un server di lingua separato per ogni progetto. In questo caso ciò è necessario, in quanto ciascuno ha un ambiente virtuale distinto.

`pylsp_in_env` è un piccolo «script adattatore» che dovrebbe essere messo in `PATH`, col seguente contenuto (da sistemare):

    #!/bin/bash
    cd $1
    # avvia il server (python-lsp-server) nell'ambiente virtuale
    # (ad esempio con le impostazioni delle variabili dell'ambiente virtuale)
    # quindi sorgente dell'ambiente virtuale
    source XYZ
    # il server e gli argomenti possono variare
    exec myserver

#### Configurazione del server LSP

Ogni specifico server LSP ha il suo modo di gestire le personalizzazioni e può utilizzare mezzi specifici per linguaggio/strumento per la configurazione, ad es. `tox.ini` (per python), `.clang-format` per lo stile di formattazione C++. Queste configurazioni possono quindi essere anche usate da altri strumenti non LSP, ad esempio da tox o da clang-format. Inoltre, alcuni server LSP caricano la configurazione anche da file personalizzati, ad es. da `.ccls`. Infine, la configurazione personalizzata del server può anche venir passata con LSP (protocollo), vedi le voci «initializationOptions» e «settings» sopra menzionate nella configurazione del server.

Dal momento che vengono applicati molti livelli di sovrapposizione/unione, il seguente esempio di configurazione client specificata dall'utente modifica una configurazione di un server per linguaggio Python.

    {
        "servers": {
            "python": {
                "settings": {
                    "pyls": {
                        "plugins": {
                            "pylint": {
                                "enable": true
                            }
                        }
                    }
                }
            }
        }
    }

Sfortunatamente la configurazione/personalizzazione del server LSP spesso non è così ben documentata, e spesso solo esaminando il codice sorgente si capiscono gli approcci di configurazione e l'insieme delle opzioni di configurazione disponibili. In particolare, il server di esempio qui sopra supporta molte altre opzioni in «settings». Consulta la documentazione di un altro client LSP per molti altri esempi di server di linguaggi e per le impostazioni corrispondenti, che possono essere facilmente e prontamente trasformate nella configurazione JSON utilizzata qui e descritta sopra.

#### Formattazione al salvataggio del server LSP

Puoi abilitare «Formattazione al salvataggio» dalle impostazioni LSP nella finestra di configurazione.

#### Soppressione diagnostica del server LSP

Può accadere che vengano riportate diagnostiche che non sono realmente utili. Questo può essere un po' problematico, specialmente se ce ne sono molte (e spesso dello stesso tipo). In alcuni casi ciò potrebbe essere ottimizzato con dei mezzi specifici del linguaggio (del server). Ad esempio, il meccanismo di configurazione clangd permette l'ottimizzazione di alcuni aspetti di diagnostica. In generale, tuttavia, potrebbe non essere evidente come farlo, oppure non affatto possibile nei modi desiderati a causa di limitazioni del server o di bug.

Come tale, l'estensione supporta la soppressione della diagnostica in modo simile ad esempio alle soppressioni in Valgrind. La configurazione più raffinata può essere fornita da una chiave «suppressions» nel JSON (unito) di configurazione.

    {
        "servers": {
            "c": {
                "suppressions": {
                    "rulename": ["filename", "pippo"],
                    "clang_pointer": ["", "clang-tidy", "clear_pointer"],
                }
            }
        }
    }

Ogni regola (valida) ha un nome arbitrario ed è definita da un vettore di lunghezza 2 o 3 che fornisce un'espressione regolare da confrontare al nome del file (completo), un'altra da confrontare con la diagnostica (testo) e da un'altra facoltativa da confrontare con (l'intervallo del codice sorgente del) testo a cui si applica la diagnostica.

Oltre alla configurazione particolareggiata qui sopra, il menu contestuale nella scheda della diagnostica supporta anche l'aggiunta e la rimozione delle soppressioni che corrispondono esattamente ad una diagnostica particolare (testo), sia a livello globale (qualsiasi file) che locale (il file specifico in questione). Queste soppressione sono memorizzate e vengono caricate dalla configurazione della sessione.

#### Risoluzione dei problemi col server LSP

Una cosa è descrivere come configurare un server LSP (personalizzato) per un linguaggio particolare, un'altra è avere un server funzionante senza problemi; di solito, per fortuna, il caso è quest'ultimo. A volte possono tuttavia sorgere dei problemi, sia a causa di qualche "sciocca" configurazione errata che di problemi ben più fondamentali con il server stesso. Quest'ultimo caso potrebbe manifestarsi ad esempio in un doppio tentativo di avvio del server, come riportato nella scheda Output Kate. Questa ha però unicamente lo scopo di trasmettere i messaggi o i progressi di alto livello piuttosto che fornire una diagnostica dettagliata, e ancor meno per quello che in realtà è un altro processo (il server LSP).

Il modo usuale di diagnosticare ciò è quello di aggiungere alcuni flag al comando di avvio (del server del linguaggio) che abilitano la registrazione (aggiuntiva) verso qualche file o standard error, cosa che non accade per impostazione predefinita. Se ora Kate viene avviato dalla riga di comando si potrebbe essere in grado di vedere più chiaramente quello che potrebbe andare storto.

Può essere informativo esaminare anche lo scambio di protocollo tra il client LSP di Kate e il server LSP. Di nuovo, quest'ultimo di solito ha modi per tracciarlo. Il client LSP in genere fornisce (a stderr) un tracciamento di debug aggiuntivo se Kate viene invocato con `QT_LOGGING_RULES=katelspclientplugin=true` adeguatamente esportato tramite `export`.

Ricerca e sostituzione
Ricerca e sostituzione

## Ricerca e sostituzione

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

### Introduzione

L'estensione di ricerca e sostituzione di Kate ti consente di cercare del testo o delle espressioni regolari in molti file contemporaneamente. Puoi cercare in tutti i file aperti, in tutti i file di una cartella e, se vuoi, nelle sue sottocartelle, oppure nei file attivi. Puoi filtrare anche in base al nome del file, ad esempio cercando solo nei file che hanno un'estensione particolare.

### Interfaccia

#### Interrogazione di ricerca

Le opzioni seguenti sono sempre visualizzate in cima alla vista dello strumento di ricerca nei file:

  Puoi avere tante ricerche aperte quante vuoi allo stesso tempo: basta fare clic sul pulsante nuova scheda nell'angolo in alto a sinistra nella vista dello strumento di ricerca. Apparirà una nuova scheda di risultati, che ti permette di effettuare una nuova ricerca.

  Il pulsante nell'angolo in alto a destra dello strumento di ricerca nei file visualizzerà alternativamente nella metà inferiore della vista dello strumento le opzioni aggiuntive per la modalità di ricerca nelle cartelle e i risultati della tua ricerca.

Trova

  Qui è dove scrivi quello che vuoi cercare. Puoi inserire del testo normale oppure un'espressione regolare, se queste sono abilitate.

Sostituisci (casella di testo)

  Il testo di sostituzione che verrà aggiunto ai file al posto del testo nella casella Trova.

Cerca

  Quando hai finito di configurare tutto premi il pulsante Cerca per effettuare la ricerca. Per fare la stessa cosa puoi anche premere Invio nella casella di testo Trova.

Sostituisci

  Quando hai finito di configurare tutto premi il pulsante Sostituisci per sostituire il testo inserito nella casella Trova con quello della casella Sostituisci. Per fare la stessa cosa puoi anche premere Invio nella casella di testo Sostituisci.

Successivo

  Vai alla corrispondenza successiva della ricerca, cambiando file se necessario.

Sostituisci spuntati

  Come per Sostituisci, ma la sostituzione sarà effettuata solo nei file che sono spuntati nel pannello sottostante.

#### Opzioni di ricerca nelle cartelle

Queste opzioni sono mostrate sotto le opzioni di interrogazione di cui sopra. Se sono invece visualizzati i risultati della ricerca premi il pulsante per mostrarle.

Cerca in

  Qui ci sono tre opzioni: seleziona File aperti per cercare in tutti i file attualmente aperti in Kate, Cartella per cercare in una cartella e, a scelta, nelle sue sottocartelle, oppure File attuale per cercare solo nel file attivo.

  Se l'estensione dei Progetti è caricata, puoi cercare sia nel Progetto attuale che in Tutti i progetti aperti.

Distingui le maiuscole

  Limita i risultati a quelli che hanno le stesse maiuscole e minuscole specificate nella ricerca.

Espressioni regolari

  Ti permette di usare le espressioni regolari invece che del semplice testo come stringa di ricerca.

Espandi i risultati

  Visualizza tutti i risultati trovati in ogni file, invece che solo un elenco di file che contengono la stringa cercata.

Cartella

  Puoi inserire il percorso della cartella in cui vuoi cercare; ad esempio, potresti inserire `~/sviluppo/kde/kate/` se volessi cercare nel codice sorgente di Kate. Questa opzione è disponibile solo se utilizzi la modalità nella cartella.

Apri finestra di selezione dei file

  Premi questo pulsante per localizzare la cartella nel navigatore delle cartelle del tuo sistema. Questo pulsante funziona solo se si utilizza la modalità Cartella.

  Premi questo pulsante per sostituire la Cartella con la cartella superiore a quella attualmente selezionata. Questo pulsante funziona solo se utilizzi la modalità Cartella.

  Questo pulsante imposterà la voce della Cartella a quella in cui si trova il documento attuale. Il pulsante funziona solo se utilizzi la modalità Cartella.

Filtro

  Questa opzione ti permette di cercare solo i nomi di file che corrispondano ad un certo schema. Cambialo ad esempio in `*.cpp` per cercare solo file scritti in C++, e in `kate*` per quelli che cominciano per `kate`. Puoi inserire più filtri separandoli con delle virgole (`,`); quest'opzione non è però disponibile nella modalità file aperti.

Escludi

  Il contrario di Filtro: impedisce a Kate di cercare dei file che corrispondono a modelli precisi. Come per il Filtro puoi digitare più modelli separandoli con delle virgole (`.`); quest'opzione non è però disponibile nella modalità File aperti.

Ricorsivo

  Se questa opzione è abilitata, Kate cercherà anche in tutte le sottocartelle della cartella selezionata. Questa opzione è disponibile solo se si utilizza la modalità cartella.

Includi i file nascosti

  Se questa opzione è abilitata, Kate cercherà anche nei file o nelle cartelle che sono normalmente nascosti dal sistema operativo. Questa opzione è disponibile solo se si utilizza la modalità Cartella.

Segui i collegamenti simbolici

  L'estensione di ricerca nei file normalmente non segue i collegamenti simbolici. Se questa opzione è abilitata l'estensione invece li seguirà, e cercherà nei file e nelle cartelle a cui riferiscono. Questa opzione è disponibile solo utilizzando la modalità Cartella.

  ### Avvertimento

  È possibile che i collegamenti simbolici puntino alla cartella genitore di quella attualmente cercata, o che altre cartelle contenenti collegamenti simbolici puntino ad essa. Se è presente un simile collegamento e l'opzione è abilitata, Kate seguirà ripetutamente il collegamento, e la ricerca non si concluderà mai.

Includi i file binari

  Se questa opzione è abilitata, Kate cercherà anche nei file che non sembrano essere file di testo.

#### Risultati della ricerca

I risultati della ricerca sono visualizzati sotto le opzioni dell'interrogazione. Se sono mostrate le opzioni per la modalità di ricerca nelle cartelle basta premere il pulsante per mostrarli. Saranno inoltre automaticamente visualizzati non appena verrà effettuata una ricerca.

I risultati di ricerca visualizzano un elenco di file che contengono il testo che corrisponde alla ricerca effettuata, seguito dal numero di occorrenze trovate in quei file.

Per vedere un elenco di corrispondenze in quel file basta fare clic sulla freccia di espansione a sinistra del nome del file. (Se è stata selezionata l'opzione Espandi i risultati, ciò avverrà automaticamente). Sarà visualizzato il numero di riga di ogni corrispondenza seguito dal contenuto di tale riga, con i termini di ricerca indicati in grassetto.

Per aprire il file in cui è stato trovato il risultato basta fare doppio clic su di esso: se necessario Kate lo aprirà. Puoi inoltre spostare il cursore nella posizione di una corrispondenza particolare facendo doppio clic sulla voce in elenco anziché sul nome del file.

### Struttura del menu

Modifica → Cerca nei file (Ctrl+Alt+F)

  Avvia la vista dello strumento Ricerca e sostituisci

Modifica → Vai alla corrispondenza successiva

  Vai alla corrispondenza successiva in una ricerca eseguita dall'estensione Cerca e sostituisci.

Modifica → Vai alla corrispondenza precedente

  Vai alla corrispondenza precedente in una ricerca eseguita dall'estensione Cerca e sostituisci.

Visualizza → Viste degli strumenti → Mostra cerca e sostituisci

  Attiva o disattiva la visualizzazione dello strumento Cerca e sostituisci di Kate.

Frammenti di Kate
Frammenti di Kate

## Frammenti di Kate

Martin Gergov

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

### Introduzione

I frammenti di Kate sono un'estensione usata per risparmiare tempo con il supporto dei cosiddetti «frammenti» (codice sorgente, codice macchina o testo riutilizzabile). L'estensione supporta anche il completamento del codice e JavaScript.

### Struttura del menu

Visualizza → Viste degli strumenti → Mostra frammenti

  Mostra il pannello contenente tutti i frammenti del tuo deposito che sono disponibili per il tipo di file attualmente aperto.

Strumenti → Crea frammento

  Crea un nuovo frammento, cioè un pezzo di testo riutilizzabile che puoi inserire in qualsiasi parte di qualsiasi documento.

### Pannello dei frammenti

Il pannello per i frammenti di Kate.

Nel pannello dovresti vedere un elenco di depositi di frammenti, insieme alle opzioni per crearne di tuoi, di recuperarli da Internet o di caricarli da un file locale. Ogni deposito ha una casella con cui puoi attivarlo o disattivarlo; ci sono anche dei pulsanti per modificare ed eliminare i depositi esistenti.

#### Caricare i file dei depositi di frammenti

Puoi scaricare i depositi di frammenti da Internet: basta che fai clic su Ottieni nuovi frammenti e ti apparirà una finestra con un elenco di depositi di frammenti. Dopo aver scaricato il frammento desiderato assicurati di attivarlo.

#### Creare e modificare i depositi

Per creare un nuovo deposito di frammenti fai clic su Aggiungi deposito. Ora dovresti vedere una finestrella che chiede il nome, la licenza e l'autore del file di frammenti: dopo aver scelto le opzioni desiderate fai clic su Ok.

L'interfaccia dell'editor di depositi.

L'editor dei depositi di frammenti contiene le seguenti opzioni:

Nome

  Appare nell'elenco dei frammenti nella vista degli strumenti, e viene usato per la funzionalità di completamento del codice.

Spazio dei nomi

  Prefisso usato nel completamento del codice.

Licenza

  Seleziona la licenza per il tuo deposito di frammenti.

Autori

  Inserisci i nomi degli autori del file di frammenti.

Tipi di file

  Seleziona i tipi di file a cui vuoi che si applichi il deposito: l'impostazione predefinita è «», in modo che il deposito si applichi a tutti i file. Puoi cambiarla, per esempio in qualcosa come `C++`, oppure selezionare da un elenco mediante un clic sulle voci, e puoi specificare anche più di un tipo di file: basta che premi Shift mentre aggiungi i tipi.

#### Creare e modificare i frammenti

L'interfaccia dell'editor di frammenti.

Nome

  Il nome che sarà mostrato nell'elenco di completamento.

Scorciatoia

  Premendo questa scorciatoia il frammento sarà inserito nel documento.

Frammenti

  Il testo che il tuo frammento inserirà nel documento.

  Un frammento può contenere campi modificabili, su cui puoi spostarti premendo Tab. Per creare i campi nel testo del modello si possono usare le seguenti espressioni:

  `${`field_name`}` crea un semplice campo modificabile. Tutte le successive occorrenze dello stesso `field_name`creano campi che rispecchiano i contenuti del primo durante la modifica.

  `${`field_name=default`}` può essere usato per specificare un valore predefinito per il campo. `default` può essere una qualsiasi espressione JavaScript.

  Usa `${`field_name`=`testo`}` per specificare una stringa fissa come valore predefinito.

  `${func(`other_field1`, `other_field2`, ...)}` può essere usato per creare un campo che valuta una funzione JavaScript per ciascuna modifica e che contiene il suo contenuto. Vedi la scheda Script per maggiori informazioni.

  `${cursor}` può essere usato per segnare la posizione finale del cursore dopo che è stato riempito tutto il resto.

Script

  Funzioni di supporto in JavaScript da usare nei tuoi frammenti.

  Tutte le funzioni JavaScript dovrebbero ritornare i contenuti che vuoi mettere nel modello di campo come una stringa.

  Le funzioni sono chiamate in un ambito che contiene i contenuti di tutti i campi modello come variabili locali. Per esempio, in un frammento che contiene `${`field`}` sarà presente una variabile, chiamata `field` , contenente i contenuti aggiornati del campo modello. Quelle variabili possono sia usate staticamente nella funzione sia passate come argomento usando la sintassi `${func(field)}` oppure `${`field2=func(field)`}` nella stringa del frammento.

  Puoi usare l'API di scripting di Kate per ottenere il testo selezionato, l'intero testo, il nome del file ed altro usando i metodi appropriati degli oggetti `document` e `view`. Per ulteriori informazioni fai riferimento alla documentazione dell'API di scripting.

  Per script più complessi può essere importante capire che prima il frammento grezzo viene inserito nel documento, poi le funzioni vengono valutate. Ad esempio, se una funzione restituisce il testo della riga nella quale è stato inserito il frammento, quel testo conterrà anche `${functionCall()}`.

  Questo frammento è un esempio di come lavorare con le selezioni usando lo scripting con l'API. È un modo semplice per avvolgere il testo selezionato all'interno di etichette: `<strong>${view.selectedText()}</strong>`

  L'esempio seguente invoca uno script che inserisce un testo predefinito nel caso non ci sia nessuna selezione. Frammento:

  `${rangeCommand("<strong>%%1</strong>", "Bold")}`

  Script:

      function rangeCommand(command, def) {
          if (view.selectedText().length
      > 0) {
              return command.replace("%%1", view.selectedText());
          } else {
              return command.replace("%%1", def);
          }
      }

### Usare i frammenti

Selezione da un elenco di frammenti.

Puoi richiamare i frammenti in due modi:

- Scegliendo il frammento dalla vista dello strumento.

- Premendo Ctrl+Spazio mentre scrivi: questo ti mostrerà tutti i frammenti in una comoda finestra da cui potrai sceglierne uno. Questa combinazione di tasti fornisce funzionalità simili a quelle del completamento del codice.

Se il frammento contiene variabili (oltre a `${cursor}`) il cursore andrà automaticamente alla prima occorrenza di una variabile, e aspetterà che tu scriva qualcosa. Quando hai finito puoi premere Tab per passare alla prossima variabile, e così via.

### Ringraziamenti e riconoscimenti

I frammenti di Kate sono stati scritti da Joseph Wenninger.

Ringraziamenti speciali vanno al partecipante del Google Code-In 2011, Martin Gergov, per aver scritto la maggior parte di questa sezione.

Estensione Macro da tastiera
Estensione Macro da tastiera

## Estensione Macro da tastiera

Pablo Rauzy `<r .at. uzy.me>`

### Introduzione

Registra ed esegui le macro da tastiera (cioè una sequenza di azioni da tastiera).

### Uso basilare

#### Per avviare la registrazione di una macro da tastiera:

Strumenti → Macro da tastiera → Registra macro... (Ctrl+Shift+K).

L'estensione registrerà ogni pressione di tasti fino al termine della registrazione.

#### Per interrompere la registrazione:

Strumenti → Macro da tastiera → Interrompi la registrazione della macro (Ctrl+Shift+K).

L'estensione interromperà la registrazione della pressione dei tasti e salverà la sequenza come macro corrente.

#### Per annullare la registrazione:

Strumenti → Macro da tastiera → Annulla registrazione della macro (Ctrl+Alt+Shift+K).

L'estensione interromperà la registrazione della pressione dei tasti, ma la macro corrente non cambierà.

#### Per eseguire la macro corrente:

Strumenti → Macro da tastiera → Esegui macro (Ctrl+Alt+K).

L'estensione eseguirà la macro corrente.

Anche il comando `kmplay`, senza argomenti, eseguirà la macro corrente.

### Macro con nome

È possibile salvare le macro da tastiera dandogli un nome.

Le macro con nome sono persistenti tra le sessioni di Kate: vengono salvate nel file `keyboardmacros.json` che si trova nella cartella dei dati utente di Kate (di solito `~/.local/share/kate/`).

#### Per salvare la macro corrente:

Strumenti → Macro da tastiera → Salva la macro corrente (Alt+Shift+K).

L'estensione ti chiederà un nome, e salverà la macro con quello.

Il comando `kmsave `nome`` salverà la macro corrente come ``nome``.

#### Per caricare una macro come la corrente:

Strumenti → Macro da tastiera → Carica macro con nome....

L'estensione elenca le macro salvate come voci di questo sotto-menu: attivandone una, questa verrà caricata come corrente.

Il comando `kmload `nome`` caricherà come corrente la macro salvata come ``nome``.

#### Per eseguire una macro salvata senza caricarla:

Strumenti → Macro da tastiera → Esegui macro con nome....

L'estensione elenca le macro salvate come voci di questo sotto-menu: attivandone una, la macro corrispondente verrà eseguita senza essere caricata.

Nota che ogni macro salvata è un'azione che fa parte della collezione di azioni corrente; in questo modo una scorciatoia personalizzata può essere assegnata ad essa dall'interfaccia Impostazioni → Configura scorciatoie da tastiera....

Il comando `kmplay `nome`` eseguirà la macro salvata come ``nome`` senza caricarla.

#### Per pulire, cioè eliminare, una macro salvata:

Strumenti → Macro da tastiera → Pulisci macro con nome....

L'estensione elenca le macro salvate come voci di questo sotto-menu: attivandone una, la macro corrispondente verrà pulita (cioè eliminata).

Il comando `kmwipe `nome`` pulirà la macro salvata come ``nome``.

#### Suggerimenti per i comandi:

Nota che tutti questi comando dopo il prefisso `km` utilizzano una lettera diversa: in questo modo puoi chiamarli in maniera efficiente usando il completamento con tab!

### Limitazioni

Al momento le macro da tastiera non vengono eseguite correttamente se nell'interfaccia vengono utilizzati alcuni oggetti, ad esempio QMenu, QuickOpenLineEdit o TabSwitcherTreeView. Non sono sicuro sul perché, ma il mio primo pensiero è che questi oggetti funzionino in una modalità non standard riguardo agli eventi da tastiera.

Estensione SQL
Estensione SQL

## Estensione SQL

Ömer Faruk Oruç

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

### Introduzione

Il linguaggio strutturato di interrogazione (SQL) è un linguaggio specializzato per l'aggiornamento, l'eliminazione e la richiesta di informazioni dalle banche dati.

L'estensione SQL per Kate ti permette di:

- Creare una banca dati

- Connetterti a banche dati esistenti

- Inserire ed eliminare dati dalle banche dati

- Eseguire le interrogazioni

- Visualizzare i risultati in una tabella

### Connessione ad una banca dati

Seleziona Aggiungi connessione dal menu o dalla barra degli strumenti SQL, e quindi seleziona il driver di banca dati di Qt™ che vuoi usare (inclusi QSQLITE, QMYSQL3, QMYSQL, QODBC3, QODBC, QPSQL7, e QPSQL); se non lo trovi devi installarlo. Premi quindi Successivo.

Se la banca dati che hai selezionato usa un file, basta che ne indichi la posizione e che premi il pulsante Successivo; se è invece richiesta la connessione ad un server devi inserire il nome host, il tuo nome utente, la tua password e qualsiasi altra informazione che il driver ti richieda. Premi quindi Successivo.

Infine dai un nome alla connessione e premi Successivo.

### Eseguire le interrogazioni

#### INSERT/DELETE/UPDATE

Con l'estensione SQL puoi inserire, eliminare ed aggiornare i dati, proprio come faresti da riga di comando o da un programma: basta che inserisci un'interrogazione e che premi il pulsante Esegui interrogazione nella barra degli strumenti, oppure SQL → Esegui interrogazione (Ctrl+E).

Esempio 4.1. Alcune interrogazioni d'esempio

INSERT

      INSERT INTO nome_tabella ("campo1", "campo2", "campo3", "campo4", "campo5")
      VALUES ("valore1", "valore2", "valore3", "valore4", "valore5" )

DELETE

      DELETE FROM nome_tabella WHERE name = "testo"

UPDATE

      UPDATE nome_tabella SET "campo1" = "testo", "campo2" = "testo", "campo3" = "testo", "campo4" = "testo", "campo5" = "testo"

#### SELECT

Dopo aver eseguito un'interrogazione di tipo SELECT puoi vederne i risultati in una tabella; questa apparirà nella vista degli strumenti Risultato di dati SQL in fondo a Kate, oppure come testo in Risultato di testo SQL. Se c'è un errore potrai vederlo dal risultato.

Esempio 4.2. Interrogazione SELECT d'esempio

    SELECT * FROM nome_tabella

Nella vista degli strumenti Risultato di dati SQL ci sono diversi pulsanti:

Ridimensiona le colonne in base ai contenuti

  Cambia le dimensioni delle colonne per adattarsi al loro contenuto.

Ridimensiona le righe in base ai contenuti

  Cambia le dimensioni delle righe per adattarsi al loro contenuto.

Copia

  Seleziona tutto il contenuto della tabella e lo copia negli appunti.

Esporta

  Esporta tutto il contenuto della tabella in un file, negli appunti o nel documento attuale in formato di valori separati da virgole (CSV).

Pulisci

  Rimuove qualsiasi cosa dalla vista della tabella.

Puoi ora cambiare i colori visualizzati nella tabella andando nella sezione SQL dopo aver selezionato Impostazioni → Configura Kate....

### Sfogliare

Puoi sfogliare la banca dati usando la vista dello strumento Schema di banca dati sulla sinistra. Le informazioni mostrate variano a seconda del driver per la banca dati che stai usando.

Per aggiornare questo elenco fai clic con il tasto destro del mouse in qualsiasi parte nella vista dello strumento, e seleziona Aggiorna. Per generare un'interrogazione su una qualsiasi voce dell'elenco fai clic con il tasto destro del mouse, seleziona Genera, e quindi il tipo di interrogazione (SELECT, UPDATE, INSERT, o DELETE) dal sotto-menu che compare.

### Struttura del menu

SQL → Aggiungi connessione...

  Aggiunge una nuova connessione usando un qualsiasi driver per le banche dati.

SQL → Rimuovi connessione

  Rimuove la connessione selezionata.

SQL → Modifica connessione...

  Modifica le impostazioni della connessione attuale.

Connessioni

  Tutte le connessioni alle banche dati che hai creato sono elencate tra gli elementi del menu Modifica connessione ed Esegui interrogazione; selezionane una per eseguire interrogazioni o per modificarla.

SQL → Esegui interrogazione (Ctrl+E)

  Esegue l'interrogazione.

### Ringraziamenti e riconoscimenti

L'estensione SQL è stata scritta da Marco Mentasti.

Ringraziamenti speciali vanno al partecipante del Google Code-In 2011, Ömer Faruk Oruç, per aver scritto la maggior parte di questa sezione.

Estensione Visore di simboli
Estensione Visore di simboli

## Estensione Visore di simboli

### Usare l'estensione di chiusura per gruppo

Permette agli sviluppatori di visualizzare i simboli (funzioni, macro e strutture) nel codice sorgente.

Puoi agevolmente sfogliare il codice facendo clic sulle informazioni analizzate.

Al momento sono supportati i seguenti linguaggi:

C/C++, Java™, Perl, PHP, Python, Ruby, XSLT, Tcl/Tk e Fortran

Elenco delle funzionalità:

Modalità ad albero
Abilita o disabilita l'ordinamento
Mostra o nasconde i parametri delle funzioni
Espande o collassa la modalità ad albero
Auto-aggiorna dopo i cambiamenti
L'analisi del codice è basata sull'infrastruttura di evidenziazione della sintassi di KDE Frameworks

### Struttura del menu

Visualizza → Vista degli strumenti → Mostra lista dei simboli (Ctrl+\)

  Commuta la vista della lista di simboli di Kate visualizzando alternativamente le funzioni, le macro e le strutture del codice sorgente del documento attivo.

### Configurazione

Scegli le opzioni di elaborazione predefinite

Estensione Strumento visivo per terminale
Estensione Strumento visivo per terminale

## Estensione Strumento visivo per terminale

L'emulatore di terminale integrato è, per tua comodità, una copia dell'applicazione di terminale Konsole di KDE. È disponibile alla voce di menu Visualizza → Viste degli strumenti → Mostra il pannello del terminale, e acquisirà il fuoco nel momento in cui viene visualizzato. In aggiunta, se l'opzione Sincronizza automaticamente il terminale con il documento attuale quando possibile è abilitata, passerà alla cartella del documento attuale quando viene visualizzato, se è possibile, oppure quando il documento corrente cambia.

La posizione predefinita nella finestra di Kate è in basso, sotto l'area di modifica.

Puoi configurare Konsole utilizzando il menu del tasto destro del mouse; per ulteriori informazioni vedi il manuale di Konsole.

L'emulatore di terminale incorporato è fornito dall'estensione Strumento visivo per terminale.

### Struttura del menu

Visualizza → Viste degli strumenti → Mostra il pannello del terminale

  Mostra o nasconde l'emulatore di terminale integrato.

  Il terminale sarà creato alla prima attivazione.

  Quando l'emulatore di terminale viene visualizzato, il fuoco si sposterà su di esso, in modo che tu possa digitare immediatamente i comandi. Se l'opzione Sincronizza automaticamente il terminale con il documento attuale quando possibile è abilitata nella pagina Terminale della finestra principale di configurazione, la sessione della shell passerà alla cartella del documento attuale, se questo è un file locale.

Strumenti → Incanala al terminale

  Passa il testo selezionato all'emulatore di terminale integrato. Non viene aggiunto alcun carattere di fine riga dopo il testo.

Strumenti → Sincronizza terminale con il documento attuale

  Ciò avrà come effetto l'esecuzione del comando cd da parte del terminale incorporato, nella cartella del documento attivo.

  In alternativa puoi configurare Kate in modo che mantenga sempre il terminale sincronizzato con il documento attuale, vedi la sezione chiamata «Configurazione» per ulteriori informazioni.

Strumenti → Esegui il documento attuale

  Esegui il documento attuale in Konsole. Possono essere eseguiti solo i documenti locali. Kate mostrerà un avviso prima di eseguire i documenti, perché questa azione può essere una seria minaccia alla sicurezza.

Strumenti → Attiva/Disattiva il pannello del terminale

  Passa il fuoco dal documento attuale al terminale e viceversa.

### Configurazione

Puoi configurare l'estensione Strumento visivo per terminale dalla pagina Terminale della finestra di configurazione.

Sono disponibili le seguenti opzioni:

Sincronizza automaticamente, quando è possibile, il terminale con il documento attuale

  Ciò comporterà l'esecuzione nel terminale integrato del comando cd nella cartella del documento attivo al momento dell'avvio e quando un nuovo documento acquisisce il fuoco. Se non è abilitata, sarà necessario eseguire manualmente tutta la navigazione nel terminale.

Impostare la variabile d'ambiente EDITOR a «kate -b»

  Questa opzione imposta la variabile d'ambiente `EDITOR` in modo che i programmi eseguiti nel terminale integrato che aprono file in un editor li aprano in Kate invece che nell'editor predefinito configurato nella tua shell. Affinché il programma che lo ha invocato sappia che la modifica del file è terminata, non sarà possibile continuare a utilizzare il terminale fino alla chiusura del file in Kate.

Nascondi Konsole se viene premuto «Esc»

  Ciò permette di chiudere il terminale incorporato premendo il tasto Esc. Può causare dei problemi con le applicazioni di terminale che utilizzano il tasto Esc, ad es. vim. Aggiungi queste applicazioni nella casella qui sotto. Le voci in questo elenco dovrebbero essere separate da virgole.

L'estensione Filtro di testo
L'estensione Filtro di testo

## L'estensione Filtro di testo

### Usare l'estensione Filtro di testo

Puoi usare questa estensione per elaborare il testo selezionato usando i comandi da terminale. La selezione sarà utilizzata come input per il comando, e il risultato rimpiazzerà la selezione o sarà copiato negli appunti, a seconda delle preferenze dell'utente.

Esempi:

- less /etc/fstab - incolla il contenuto di questo file o lo copia negli appunti

- wc - conta le righe, le parole e i caratteri della selezione e li incolla nel documento, o li copia negli appunti

- sort - ordina le righe della selezione e incolla il risultato nel documento, o lo copia negli appunti

### Struttura del menu

Strumenti → Filtro di testo (Ctrl+\)

  Apre la finestra Filtro di testo:

  Inserisce il comando da shell nella casella combinata, oppure seleziona dalla cronologia un comando usato in precedenza.

  Copia il risultato invece di incollarlo

    Copia il risultato negli appunti senza modificare il documento.

  Unisce STDOUT a STDERR

    Se selezionato verranno fusi i risultati da STDOUT e STDERR, e non saranno riportati gli errori. Diversamente STDERR sarà visualizzato come un messaggio passivo.

Validazione XML
Validazione XML

## Validazione XML

Daniel Naber `<daniel.naber@t-online.de>`

Questa estensione controlla che i file XML siano validi e siano scritti correttamente.

L'estensione controlla il file attuale: sul fondo della finestra principale di Kate apparirà un elenco con gli avvertimenti e gli errori; puoi fare clic su un messaggio d'errore per saltare al punto corrispondente nel file. Se il file ha un «DOCTYPE», allora per controllarne la validità si userà il DTD dato da questo. Ci si aspetta che il DTD sia in una posizione relativa al file attuale: per esempio, se il doctype si riferisce a `DTD/xhtml1-transitional.dtd` e il file è `/home/pippo/prova.xml`, allora ci si aspetta che il DTD sia a `/home/pippo/DTD/xhtml1-transitional.dtd`. Sono comunque supportati anche i DTD remoti specificati con http.

Se il file non ha un doctype, ne sarà controllata la corretta formattazione.

Per saperne di più su XML, vedi le pagine ufficiali del W3C su XML.

Internamente questa estensione chiama il comando esterno xmllint, che fa parte di libxml2; l'estensione non funzionerà se questo comando non è correttamente installato nel tuo sistema.

Per caricare questa estensione apri la finestra di configurazione di Kate in Impostazioni → Configura Kate. Seleziona quindi Validazione XML, che apparirà nella sezione Estensioni, in Applicazione, e chiudi la finestra.

### Struttura del menu

XML → Convalida XML

  Questo avvierà il controllo, come descritto sopra.

### Ringraziamenti e riconoscimenti

Estensione di Kate «Validazione XML», copyright 2002 di Daniel Naber `(daniel.naber AT t-online.de)`.

Copyright 2002 della documentazione di Daniel Naber

Completamento XML
Completamento XML

## Completamento XML

Daniel Naber `<daniel.naber@t-online.de>`

Questa estensione suggerisce cosa è ammissibile in un certo punto di un file XML, secondo la DTD del file. Saranno elencati i possibili elementi, gli attributi, i valori degli attributi o le entità, a seconda della posizione del cursore (per esempio, se il carattere a sinistra del cursore è «&», vengono elencate tutte le entità). È anche possibile chiudere l'ultimo tag aperto a sinistra.

La DTD deve esistere in formato XML, come prodotta dal programma Perl dtdparse; indicheremo una tale DTD come «meta-DTD». Sono fornite alcune meta-DTD, che sono installate in `katexmltools/` in `qtpaths `--paths GenericDataLocation`` ; questa è anche la cartella predefinita alla selezione di Assegna meta-DTD. Per produrre le tue meta-DTD recupera dtdparse da questo indirizzo.

### Uso

Avvia Kate e apri la finestra di configurazione da Impostazioni → Configura Kate.... Seleziona quindi Completamento XML, che apparirà nella sezione Estensioni sotto Applicazione, e chiudi la finestra, dopodiché seleziona XML → Assegna meta-DTD.... Se il documento non contiene alcun «DOCTYPE» o questo è sconosciuto, dovrai selezionare una meta-DTD dal filesystem, altrimenti sarà automaticamente caricata la meta-DTD corrispondente al DOCTYPE del documento attuale.

Puoi ora usare l'estensione mentre scrivi del testo:

< (minore)

  Questo attiverà un elenco di elementi possibili, a meno che il cursore sia già dentro a un tag. Nota che attualmente non puoi usarlo per inserire degli elementi di massimo livello (per esempio «<html>»).

< / (minore e sbarra)

  Inserendo questi caratteri avrai la possibilità di chiudere l'elemento attuale (l'ultimo aperto a sinistra del cursore); premi Invio per accettare il suggerimento. Contrariamente all'elemento del menu Chiudi elemento questo funziona solo quando è stata assegnata una DTD.

" (virgolette)

  Il tasto delle virgolette attiverà un elenco di valori possibili per gli attributi (se ce ne sono), se sei all'interno di un tag.

(spazio)

  Questo tasto attiverà un elenco di attributi possibili per l'elemento attuale, se sei dentro a un tag.

& (e commerciale)

  Questo tasto attiverà un elenco di entità.

### Funzionalità e limitazioni

Puoi provare tutte le funzioni e le limitazioni caricando in Kate `katexmltools/testcases.xml` in `qtpaths `--paths GenericDataLocation`` e seguendo le istruzioni.

### Struttura del menu

XML → Inserisci elemento... (Ctrl+Invio)

  Questo aprirà una finestra che ti permette di inserire un elemento XML, mentre saranno inseriti automaticamente i caratteri <, > e il tag di chiusura. Il testo sarà incluso tra i tag di apertura e chiusura se lo avevi selezionato al momento della selezione di questo elemento del menu. Se hai assegnato una meta-DTD con Assegna meta-DTD... la finestra offre il completamento per tutti gli elementi che possono essere inseriti alla posizione attuale del cursore.

XML → Chiudi elemento (Ctrl+<)

  Questo cercherà nel testo un tag non ancora chiuso, e lo chiuderà inserendone il tag di chiusura corrispondente. La ricerca inizia dalla posizione del cursore e va verso sinistra. Se non è possibile trovare un tag aperto non succederà nulla.

XML → Assegna meta-DTD...

  Questo dirà all'estensione quale meta-DTD usare per il documento attuale. Nota che questa assegnazione non verrà salvata, dovrai ripeterla al prossimo riavvio di Kate.

### Ringraziamenti e riconoscimenti

Estensione di Kate «Completamento XML», copyright 2001, 2002 di Daniel Naber `(daniel.naber AT t-online.de)`.

Copyright della versione per KDE SC 4 2010 di Tomáš Trnka

Copyright 2001, 2002 della documentazione di Daniel Naber

L'estensione Esploratore del compilatore
L'estensione Esploratore del compilatore

## L'estensione Esploratore del compilatore

L'estensione Esploratore del compilatore ti permette di usare direttamente in Kate l'esploratore del compilatore. Questo strumento è di solito limitato solamente a un file, ed è difficile vedere il codice generato di un file nel progetto. Questa estensione mira a semplificare questo processo, rilevando automaticamente i comandi di compilazione del tuo file.

### Uso

La prima cosa che devi fare è aprire una scheda dell'esploratore del compilatore: premi Ctrl+Alt+I per aprire la barra dei comandi, poi cerca «Apri il file corrente nell'Esploratore del compilatore» e premi Invio. Potresti anche voler aggiungere questa azione alla barra degli strumenti, oppure assegnarle una scorciatoia per un accesso più semplice.

Successivamente devi impostare un'istanza locale dell'esploratore del compilatore, oppure di usare quella pubblica https://godbolt.org/ instance. Vedi https://github.com/compiler-explorer/compiler-explorer. Dopo averla aggiunta, fai clic sulla casella combinata Option nella scheda dell'esploratore del compilatore che avevi aperto in precedenza, poi seleziona Modifica Url.... Inserisci quindi l'url del server dell'esploratore del compilatore.

Se devi vedere il codice generato di un file nel progetto hai bisogno anche di un compile_commands.json, diversamente puoi saltare questa parte. Questo può essere ottenuto facilmente se stai utilizzando un sistema di compilazione moderno, ad esempio CMake o Meson. Per CMake è sufficiente passare `-DCMAKE_EXPORT_COMPILE_COMMANDS=ON` quando si invoca cmake. Il `compile_commands.json` dovrebbe essere messo nella radice del progetto. Chiudi la scheda dell'esploratore del compilatore: quando la riapri dovrebbe essere così. Chiudi la scheda dell'esploratore del compilatore in Kate: quando la riapri dovrebbe mostrare i comandi di compilazione necessari per compilare il file.

Se stai usando l'esploratore del compilatore solo per vedere il codice generato per qualcosa di temporaneo, puoi semplicemente scrivere i comandi di compilazione per il tuo file e poi fare clic su Compila. Nota che la ricompilazione automatica alla modifica non è supportata: devi fare clic su Compila ogni volta che vuoi ricompilare.

Quando il file è stato compilato, nella parte destra dovresti vedere il codice generato. Puoi fare clic col tasto destro e selezionare Rivela il codice collegato per vedere il codice generato di una particolare riga. In maniera simile, nella parte destra puoi fare clic col tasto destro e selezionare Scorri al sorgente per vedere il codice sorgente di una certa riga di codice generato.

L'estensione Formattazione
L'estensione Formattazione

## L'estensione Formattazione

L'estensione di formattazione permette di formattare il codice in maniera semplice. L'estensione mira a preservare la cronologia degli annullamenti e la posizione del cursore utente durante la formattazione del codice, in modo che l'azione non disturbi il lavoro dell'utente. Questo è particolarmente importante per la formattazione automatica al salvataggio.

### Uso

Permette all'utente di usare il formattatore del codice in due modi:

- Manualmente, usando l'azione «Formatta documento».

- Automaticamente al salvataggio

### Suggerimento

Per un accesso più semplice puoi cercare questa azione nella barra dei comandi, e poi associargli una scorciatoia

### Linguaggi e formattatori supportati

L'elenco attuale delle lingue e dei formattatori comprende:

- C/C++/ObjectiveC/ObjectiveC++/Protobuf/GLSL/Java - clang-format

- Javascript/Typescript/JSX/TSX - prettier

- JSON

  - prettier

  - clang-format

  - jq

- Dart - dartfmt

- Rust - rustfmt

- Go - gofmt

- XML - xmllint

- Zig - zigfmt

- CMake - cmake-format

- D - dfmt

- Fish Shell - fish_indent

- Bash - shfmt

- Nix - nixfmt

- QML - qmlformat

- HTML - prettier

- Swift - swiftformat

- Erlang - erlfmt

- Godot Script - gdformat

- Python

  - autopep8

  - ruff

- YAML

  - yamlfmt

  - prettier

### Configurazione

L'estensione può essere configurata in due modi:

- Globalmente, dalla finestra Configura

- Per progetto, usando il file `.kateproject`

Alla lettura della configurazione l'estensione prova prima a leggerla dal file `.kateproject`, quindi legge quella globale. Esempio:

    {
        "formatOnSave": true,
        "formatterForJson": "jq",
        "cmake-format": {
            "formatOnSave": false
        },
        "autopep8": {
            "formatOnSave": false
        }
    }

Quanto sopra:

- abilita "format on save" globalmente

- specifica "jq" come il formattatore per JSON

- disabilita "format on save" per cmake-format e per autopep8

Per configurare il formattatore per un progetto, crea prima un file `.kateproject` e poi aggiungigli un oggetto `"formattatore"`. Qui dentro puoi specificare le impostazioni, come mostrato nell'esempio precedente. Esempio:

### Nota

Affinché funzioni devi abilitare l'Estensione di progetto

    {
        "name": "My Cool Project",
        "files": [
            {
                "git": 1
            }
        ],
        "formatting": {
            "formatterForJson": "clang-format",
            "autopep8": {
                "formatOnSave": false
            }
        }
    }

### Disabilitare temporaneamente la formattazione al salvataggio

Mentre lavori, potresti aver spesso bisogno di disabilitare temporaneamente il formattatore per vari di motivi. Puoi farlo dalla barra dei menu, Strumenti → Formattazione al salvataggio. Puoi anche innescare questa azione dalla Barra dei comandi.

Capitolo 5. Strumenti avanzati di modifica
Strumenti avanzati di modifica

# Capitolo 5. Strumenti avanzati di modifica

Per informazioni sugli strumenti di modifica avanzati inclusi in Kate vedi il capitolo Strumenti avanzati di modifica del manuale di KatePart Handbook.

Capitolo 6. Estensione di Kate
Estensione di Kate

# Capitolo 6. Estensione di Kate

T.C. Hollingsworth `<tchollingsworth@gmail.com>`

Traduzione e manutenzione del documento: Paolo Zamponi
Traduzione della documentazione.: Nicola Ruggero
Aggiornamento per Kate 2.5.6: Luciano Montanaro

## Introduzione

Come ogni editor di testi avanzato, Kate offre una moltitudine di modi per espandere le sue funzionalità. Puoi scrivere semplici script per aggiungere funzionalità con JavaScript, oppure aggiungere ulteriori caratteristiche all'editor con estensioni di Kate scritte in C++. Infine, dopo aver esteso Kate saresti il benvenuto nel nostro gruppo per condividere il tuo lavoro con il mondo intero!

Lavorare con l'evidenziazione della sintassi
Lavorare con l'evidenziazione della sintassi

## Lavorare con l'evidenziazione della sintassi

Per informazioni sull'aggiunta o la modifica delle definizioni di evidenziazione della sintassi vedi la sezione evidenziazione del manuale sullo sviluppo di KatePart.

Scripting con JavaScript
Scripting con JavaScript

## Scripting con JavaScript

Per informazioni sullo scripting con JavaScript vedi la sezione sullo scripting con JavaScript del capitolo del manuale sullo sviluppo di KatePart.

Estensioni dell'applicazione Kate (C++)
Estensioni dell'applicazione Kate (C++)

## Estensioni dell'applicazione Kate (C++)

Le estensioni per l'applicazione Kate estendono le funzionalità dell'editor Kate in tutti i modi che riesci ad immaginare, utilizzando lo stesso linguaggio di programmazione usato per Kate: il C++.

Per iniziare, vedi la guida su come scrivere un'estensione per Kate sul sito web di Kate.

Capitolo 7. La modalità di inserimento Vi
La modalità di inserimento Vi

# Capitolo 7. La modalità di inserimento Vi

Per informazioni sulla modalità di inserimento Vi di Kate vedi il capitolo La modalità di inserimento Vi del manuale di KatePart.

Capitolo 8. Le voci dei menu
Le voci dei menu

# Capitolo 8. Le voci dei menu

## Il menu File

File → Nuovo (Ctrl+N)

  Questo comando crea un nuovo documento nella finestra di modifica; nell'elenco dei Documenti sulla sinistra il nuovo file è indicato come Senza nome.

File → Apri.. (Ctrl+O)

  Visualizza la finestra Apri file standard di KDE. Usa la vista dei file per selezionare quello che vuoi aprire, e fai clic su Apri per aprirlo.

File → Apri recenti

  Questa è una scorciatoia per aprire i documenti salvati di recente: un clic su questo elemento apre un elenco a fianco del menu con alcuni degli ultimi file salvati. Se fai clic su di uno in particolare questa applicazione lo aprirà, purché che il file sia ancora nello stesso posto.

File → Apri con

  Questo sotto-menu presenta un elenco di applicazioni in grado di gestire il tipo MIME del documento attuale; l'attivazione di una voce aprirà il documento con l'applicazione corrispondente.

  Inoltre la voce Altro... apre una finestra per selezionare un'altra applicazione con cui aprire il file attivo. Il file resterà aperto in Kate.

File → Salva (Ctrl+S)

  Permette di salvare il documento corrente. Se c'è già un salvataggio del documento questa operazione sovrascriverà il file precedente, senza chiedere il consenso all'utente. Se è invece il primo salvataggio di un nuovo documento, verrà invocata la finestra di dialogo «Salva come...» (descritta più sotto).

File → Salva come... (Ctrl+Shift+S)

  Permette di salvare un documento con un nuovo nome. Questo viene fatto attraverso la finestra di dialogo descritta sopra, nella sezione Apri di questa guida.

File → Salva come con codifica

  Salva un documento con un nuovo nome in una codifica diversa.

File → Salva copia come

  Salva una copia del documento con un nuovo nome, e continua a modificare il documento originale.

File → Salva tutto (Ctrl+L)

  Questo comando salva tutti i file modificati aperti.

File → Ricarica (F5)

  Ricarica il file attivo da disco. Questo comando è utile se un altro programma o processo ha cambiato il file mentre era aperto in questa applicazione.

File → Ricarica tutto

  Ricarica tutti i file aperti.

File → Stampa... (Ctrl+P)

  Apre una semplice finestra di dialogo di stampa, che permette all'utente di specificare cosa, dove e come stampare.

File → Esporta come HTML

  Salva il documento attualmente aperto come file HTML, che verrà formattato con l'evidenziazione della sintassi e le impostazioni dello schema di colori attuali.

File → Chiudi (Ctrl+W)

  Chiude il file attivo con questo comando. Se hai fatto delle modifiche senza salvarle ti verrà chiesto se vuoi salvarle prima che Kate lo chiuda.

File → Chiudi gli altri

  Chiudi gli altri documenti aperti.

File → Chiudi tutti

  Questo comando chiude tutti i file aperti in Kate.

File → Chiudi orfani

  Chiudi tutti i documenti nell'elenco dei file che non possono venire riaperti all'avvio perché non sono più accessibili.

File → Esci (Ctrl+Q)

  Questo comando chiude Kate e tutti i file che stavi modificando. Se hai delle modifiche non salvate in uno o più file ti verrà chiesto se le vuoi salvare.

Il menu Modifica
Il menu Modifica

## Il menu Modifica

Modifica → Annulla (Ctrl+Z)

  Annulla l'ultima azione di modifica (inserimento di testo, copia, taglio eccetera).

  ### Nota

  Potrebbe annullare diversi comandi di modifica dello stesso tipo, come l'inserimento di caratteri.

Modifica → Rifai (Ctrl+Shift+Z)

  Questo annullerà la modifica più recente (se c'è) fatta usando Annulla.

Modifica → Taglia (Ctrl+X)

  Questo comando cancella la selezione corrente e la mette negli appunti. Gli appunti lavorano in maniera invisibile, e forniscono un modo per trasferire dei dati tra le applicazioni.

Modifica → Copia (Ctrl+C)

  Copia la selezione corrente negli appunti, così che possa essere incollata da qualche altra parte. Gli appunti lavorano in maniera invisibile, e forniscono un modo per trasferire dei dati tra le applicazioni.

Modifica → Incolla (Ctrl+V)

  Inserisce il primo elemento negli appunti, alla posizione del cursore. Gli appunti lavorano in maniera invisibile, e forniscono un modo per trasferire dei dati tra le applicazioni.

  ### Nota

  Se l'opzione di sovrascrittura della selezione è attiva, il testo incollato sovrascriverà l'eventuale selezione.

Modifica → Incolla la selezione (Ctrl+Shift+Ins)

  Questo incollerà il contenuto della selezione del mouse che era stato scelto in precedenza. Seleziona del testo col puntatore del mouse per incollarlo nel file attualmente aperto utilizzando questa voce di menu.

Modifica → Scambia con il contenuto degli appunti

  Questo scambierà il testo selezionato col contenuto degli appunti.

File → Cronologia degli appunti

  Questo sotto-menu mostrerà l'inizio delle porzioni di testo recentemente copiate negli appunti. Seleziona un elemento da questo menu per incollarlo nel file attualmente aperto.

Modifica → Copia come HTML

  Copia la selezione come HTML, formattato con l'evidenziazione della sintassi e le impostazioni dello schema di colori attuale.

Modifica → Seleziona tutto (Ctrl+A)

  Seleziona l'intero documento. Può essere molto utile per copiare l'intero file in un'altra applicazione.

Modifica → Deseleziona (Ctrl+Shift+A)

  Deseleziona l'eventuale testo selezionato nell'editor.

Modifica → Modalità di selezione a blocchi (Ctrl+Shift+B)

  Cambia la modalità di selezione. Quando la modalità di selezione è quella BLOCCO la barra di stato contiene la stringa [BLOCCO] e puoi fare selezioni verticali, ad es. selezionare le colonne dalla 5 alla 10 e le righe dalla 9 alla 15.

Modifica → Modalità di inserimento

  Passa da una modalità di editing normale ad una stile Vi, modale. La modalità Vi supporta i comandi più usati, gli spostamenti dalla modalità normale alla visuale di vim, ed ha una barra di stato facoltativa per la modalità vi, che visualizza i comandi che vengono dati, i loro risultati e la modalità corrente. Il comportamento di questa modalità può essere configurato nella sezione Modalità di inserimento Vi della pagina Modifica nella finestra delle impostazioni di questa applicazione.

Modifica → Modalità di sovrascrittura (Ins)

  Alterna le modalità di inserimento e sovrascrittura. Quando la modalità è INS, i caratteri vengono inseriti alla posizione del cursore. Quando la modalità è SSC, i caratteri digitati sostituiranno quelli presenti se il cursore è posizionato davanti a un carattere. La barra di stato mostra lo stato attuale della modalità di sovrascrittura, con INS o SSC.

Modifica → Trova... (Ctrl+F)

  Apre la barra di ricerca incrementale nella parte bassa della finestra dell'editor. Nella parte sinistra della barra c'è un pulsante con un'icona per chiuderla, seguita da una piccola casella di testo per inserire la chiave di ricerca.

  Quando si inizia ad inserire la chiave di ricerca, la ricerca inizia immediatamente. Se c'è una corrispondenza nel testo questa viene evidenziata, e lo sfondo della casella di testo diventa verde chiaro. Se la ricerca non dà risultati, lo sfondo della casella di testo diventa rosso chiaro.

  Usa il pulsante oppure per andare alla corrispondenza precedente o successiva nel documento.

  Le corrispondenze nel documento sono evidenziate anche quando chiudi la barra di ricerca; premi il tasto Esc per togliere questa evidenziazione.

  Puoi scegliere di limitare la ricerca alle corrispondenze con le stesse maiuscole nello schema di ricerca. Selezionando la ricerca si limiterà ai risultati con le maiuscole e minuscole uguali a quelle specificate nello schema di ricerca.

  Fai clic sul pulsante nella parte destra della barra di ricerca incrementale per usare la barra potenziata di ricerca e sostituzione.

Modifica → Trova varianti → Trova successivo (F3)

  Ripete l'ultima ricerca, se c'è, senza richiamare la barra di ricerca incrementale, cercando in avanti nel documento a partire dalla posizione del puntatore.

Modifica → Trova varianti → Trova precedente (Shift+F3)

  Ripete l'ultima ricerca, se c'è, senza richiamare la barra di ricerca incrementale, cercando all'indietro invece che in avanti nel documento.

Edit → Trova varianti → Trova selezionato (Ctrl+H)

  Trova l'occorrenza successiva del testo selezionato.

Modifica → Trova varianti → Trova selezionato all'indietro (Ctrl+Shift+H)

  Trova l'occorrenza precedente del testo selezionato.

Modifica → Sostituisci... (Ctrl+R)

  Questo comando apre la barra avanzata di trova e sostituisci. Nella parte a sinistra in alto della barra c'è un pulsante con un'icona per chiuderla, seguita da una piccola casella di testo per inserire la chiave di ricerca.

  Si può modificare la modalità di ricerca marcando Testo semplice, Parole intere, Sequenze di escape o Espressioni regolari dal menu a discesa.

  Se sono selezionate Sequenze di escape o Espressione regolare, l'elemento di menu Aggiungi... in fondo al menu contestuale delle caselle di testo sarà abilitato, e ti permetterà di aggiungere delle sequenze di escape o delle espressioni regolari per cercare o sostituire dei modelli da liste predefinite.

  Usa il pulsante oppure per andare alla corrispondenza precedente o successiva nel documento.

  Inserisci il testo da sostituire nella casella di testo indicata con Sostituisci e premi il pulsante Sostituisci per sostituire solo il testo evidenziato; premi il pulsante Sostituisci tutto per sostituire il testo cercato in tutto il documento.

  Puoi modificare il comportamento di ricerca e sostituzione selezionando opzioni diverse in fondo alla barra. Selezionando restringerai i risultati a quelli che corrispondono alle maiuscole e minuscole di ogni carattere dello schema di ricerca, mentre con effettuerai la ricerca e la sostituzione solo all'interno della selezione attuale. Il pulsante Trova tutti evidenzia tutte le corrispondenze nel documento, e ne mostra il numero in una finestrella a comparsa.

  Fai clic sul pulsante sul lato destro della barra potenziata di ricerca e sostituzione per passare alla barra di ricerca incrementale.

Modifica → Vai a → Vai alla parentesi corrispondente (Ctrl+6)

  Sposta il cursore alla parentesi di apertura o di chiusura associata.

Modifica → Vai a → Seleziona fino alla parentesi corrispondente (Ctrl+Shift+6)

  Seleziona il testo tra le parentesi di apertura e di chiusura associate.

Modifica → Vai a → Vai alla riga modificata precedente

  Le righe che sono cambiate dall'apertura del file sono chiamate righe modificate. Questa azione salta alla riga modificata precedente.

Modifica → Vai a → Vai alla riga modificata successiva

  Le righe che sono cambiate dall'apertura del file sono chiamate righe modificate. Questa azione salta alla riga modificata successiva.

Modifica → Vai a → Va alla riga... (Ctrl+G)

  Apre la barra vai alla riga nella parte bassa della finestra, che serve per far saltare il cursore ad una particolare riga (specificata dal numero) nel documento. Il numero della riga può essere inserito direttamente nella casella di testo oppure graficamente, facendo clic sulle frecce direzionali su o giù a lato della casella di testo. La piccola freccia su incrementerà il numero della riga, e la freccia giù lo decrementerà. Si può chiudere la barra facendo clic sul pulsante con un'icona nella parte sinistra.

Il menu Visualizza
Il menu Visualizza

## Il menu Visualizza

Visualizza → Nuova finestra

  Apre una nuova istanza di Kate, che sarà identica alla precedente.

Visualizza → Scheda successiva (Alt+→)

  Attiva la scheda successiva nella barra delle schede.

Visualizza → Scheda precedente (Alt+←)

  Attiva la scheda precedente nella barra delle schede.

Visualizza → Riapri l'ultimo documento chiuso (Ctrl+Shift+T)

  Riapri l'ultimo documento, o gli ultimi documenti, chiusi.

Visualizza → Apertura rapida (Ctrl+Alt+O)

  Mostra un campo di ricerca ed un elenco di file aperti nell'area dell'editor: inserendo del testo nel campo lo si cerca tra i nomi e gli URL dei documenti. Mentre inserisci il testo nel campo di ricerca puoi usare i tasti ↑ e ↓ per scorrere la vista a elenco. Premendo il tasto Invio o facendo doppio clic su un elemento dell'elenco si visualizzerà il documento selezionato; ciò facilita il passaggio tra i documenti, se ce ne sono molti aperti.

  Questa azione è disponibile anche usando l'icona che si trova in alto a destra nella finestra dell'editor.

Visualizza → Dividi vista → Vista divisa precedente (Shift+F8)

  Attiva la vista precedente del documento, se hai suddiviso l'area di modifica in più viste.

Visualizza → Dividi vista → Vista divisa successiva (F8)

  Attiva la vista successiva del documento, se hai suddiviso l'area di modifica in più viste.

Visualizza → Dividi vista → Vista divisa a sinistra

  Rendi attiva la vista divisa intuitivamente sulla sinistra, utilizzando la posizione del puntatore se necessaria per disambiguare.

Visualizza → Dividi vista → Vista divisa a destra

  Rendi attiva la vista divisa intuitivamente sulla destra, utilizzando la posizione del puntatore se necessaria per disambiguare.

Visualizza → Dividi vista → Vista divisa in alto

  Rendi attiva la vista divisa intuitivamente in alto, utilizzando la posizione del puntatore se necessaria per disambiguare.

Visualizza → Dividi vista → Vista divisa in basso

  Rendi attiva la vista divisa intuitivamente in basso, utilizzando la posizione del puntatore se necessaria per disambiguare.

Visualizza → Dividi vista → Dividi verticalmente (Ctrl+Shift+L)

  Divide il riquadro (che può essere l'intera area di modifica) in due riquadri di uguale dimensione, quello nuovo a destra dell'attuale. Il nuovo riquadro è attivo, e mostra lo stesso documento di quello vecchio.

  Vedi anche Lavorare con Kate MDI.

Visualizza → Dividi vista → Dividi orizzontalmente (Ctrl+Shift+T)

  Divide il riquadro (che può essere l'intera area di modifica) in due riquadri di uguale dimensione, il nuovo sotto l'attuale. Quello nuovo è attivo, e mostra lo stesso documento di quello vecchio.

  Vedi anche Lavorare con Kate MDI

Visualizza → Dividi vista → Sposta il documento in una nuova divisione verticale

  Divide verticalmente la vista attiva corrente in due, e sposta il documento attualmente attivo nella parte destra.

  Vedi anche Lavorare con Kate MDI.

Visualizza → Dividi vista → Sposta il documento in una nuova divisione orizzontale

  Divide orizzontalmente la vista attiva corrente in due, e sposta il documento attualmente attivo nella parte in basso.

  Vedi anche Lavorare con Kate MDI

Visualizza → Dividi vista → Commuta orientamento

  Passa dalla divisione orizzontale a quella verticale e viceversa.

Visualizza → Dividi vista → Chiudi la vista corrente (Ctrl+Shift+R)

  Chiude il riquadro attivo, identificabile dal cursore lampeggiante. Se c'è solo un riquadro (l'area di modifica principale) questa voce è disabilitata.

  Nessun documento viene chiuso chiudendo un riquadro: i documenti saranno ancora disponibili nel menu Visualizza, oltre che nell'elenco dei file.

  Vedi anche Lavorare con Kate MDI

Visualizza → Dividi vista → Chiudi le viste inattive

  Chiude tutti i riquadri tranne quello attivo (quello con il cursore lampeggiante). Questa voce è disabilitata se c'è un solo riquadro (l'area di modifica principale).

  Nessun documento viene chiuso chiudendo un riquadro: i documenti saranno ancora disponibili nel menu Visualizza, oltre che nell'elenco dei file.

Visualizza → Dividi vista → Nascondi le viste inattive

  Nasconde tutte le viste inattive tranne quella attuale.

Visualizza → Dividi vista → Sposta la divisione a sinistra

  Quando la vista divisa è abilitata, questo sposta a sinistra la divisione tra i due documenti divisi verticalmente.

Visualizza → Dividi vista → Sposta la divisione a destra

  Quando la vista divisa è abilitata, questo sposta a destra la divisione tra i due documenti divisi verticalmente.

Visualizza → Dividi vista → Sposta la divisione in alto

  Quando la vista divisa è abilitata, questo sposta in alto la divisione tra i due documenti divisi orizzontalmente.

Visualizza → Dividi vista → Sposta la divisione in basso

  Quando la vista divisa è abilitata, questo sposta in basso la divisione tra i due documenti divisi orizzontalmente.

### Nota

Alcune delle azioni comuni nel Visualizza Dividi vista sono disponibili usando il pulsante che si trova nell'angolo in alto a destra della finestra dell'editor

Visualizza → Viste degli strumenti
  Visualizza → Viste degli strumenti → Mostra barre laterali (Ctrl+Alt+Shift+F)

    Attiva o disattiva la visualizzazione delle barre dei pulsanti laterali. Questo comando non influenza la visualizzazione del contenuto della barra laterale, le barre visibili lo resteranno, e, se hai assegnato delle scorciatoie ai comandi seguenti, queste continueranno a funzionare normalmente.

  Visualizza → Viste degli strumenti → Mostra`Estensione`

    Una lista di tutte le estensioni abilitate. Usa la casella davanti a ciascun elemento per attivare o disattivare la visualizzazione della vista strumento.

Visualizza → Passa alla riga di comando (F7)

  Questo comando commuta la visualizzazione della riga di comando integrata.

Visualizza → Ingrandisci i caratteri (Ctrl++)

  Aumenta la dimensione dei caratteri.

Visualizza → Rimpicciolisci i caratteri (Ctrl+-)

  Diminuisce la dimensione dei caratteri.

Visualizza → Schema

  Questo menu elenca tutti gli schemi di colori disponibili. Da qui puoi cambiare lo schema per la vista attuale, mentre per cambiare lo schema predefinito devi usare la pagina Caratteri e colori nella finestra di configurazione.

Visualizza → A capo automatico → Ritorno a capo dinamico (F10)

  Attiva o disattiva l'andata a capo automatica dinamica della vista attuale. L'andata a capo dinamica rende tutto il testo di una vista visibile senza scorrere orizzontalmente, rendendo una riga di testo effettivo su una o più righe quando necessario.

Visualizza → A capo automatico → Indicatori di a capo dinamico

  Scegli quando e come visualizzare gli indicatori di andata a capo automatica dinamica. Ciò è disponibile solo se è spuntata l'opzione A capo automatico dinamico.

Visualizza → A capo automatico → Mostra indicatore di ritorno a capo statico

  Attiva o disattiva la visualizzazione della riga verticale che indica l'ampiezza della pagina come configurata nella finestra di configurazione. Questa funzione presuppone che si usi un carattere a spaziatura fissa.

Visualizza → Bordi → Mostra bordo delle icone (F6)

  Questa è una voce di commutazione. Renderà visibile o meno il bordo per le icone sul lato sinistro dell'editor attivo. Il bordo dell'icona indica le posizioni delle righe segnate nell'editor.

Visualizza → Bordi → Mostra i numeri di riga (F11)

  Attivando questo elemento verrà visualizzato un pannello sul bordo sinistro dell'editor attivo per visualizzare i numeri di riga del documento, disattivandolo il pannello non sarà mostrato.

Visualizza → Bordi → Mostra i segni nella barra di scorrimento

  Attiva o disattiva la visualizzazione dei segnalibri (ed altri segni) sulla barra di scorrimento verticale. Quando è attiva, un indicatore è rappresentato da sottili righe nel colore di evidenziazione sulla barra di scorrimento; un clic col tasto centrale del mouse farà scorrere la vista ad una posizione prossima all'indicatore.

Visualizza → Bordi → Mostra minimappa di scorrimento

  Questo sostituirà la barra di scorrimento con una rappresentazione del documento attuale. Per maggiori informazioni sulla mini-mappa di scorrimento, vedi la sezione sulla mini-mappa della barra di scorrimento del manuale di KatePart.

Visualizza → Raggruppamento del codice

  Queste opzioni sono rilevanti per il raggruppamento del codice:

  Mostra segni di raggruppamento (F9)

    Attiva e disattiva la visualizzazione degli indicatori di raggruppamento a sinistra della vista.

  Contrai il nodo attuale

    Contrae la regione contenente il cursore.

  Espandi il nodo attuale

    Espande la regione contenente il cursore.

  Contrai nodi di massimo livello (Ctrl+Shift+-)

    Contrae tutte le regioni di massimo livello nel documento. Fai clic sul triangolo che punta a destra per espandere tutte le regioni di massimo livello.

  Contrai nodi di massimo livello (Ctrl+Shift++)

    Espande tutte le regioni di livello superiore nel documento.

Mostra spazi non stampabili

  Mostra/nasconde i riquadri che delimitano gli spazi non stampabili.

Il menu Segnalibri
Il menu Segnalibri

## Il menu Segnalibri

Sotto le voci qui descritte ne sarà disponibile una per ciascun segnalibro nel documento attivo. Il testo sarà composto dalle prime parole della riga indicata: scegli una voce per spostare il cursore all'inizio della riga corrispondente, e l'editor scorrerà il testo di quanto è necessario per mostrarla.

Segnalibri → Metti segnalibro (Ctrl+B)

  Imposta o rimuove un segnalibro nella riga attuale del documento attivo (se c'è un segnalibro questo viene rimosso, altrimenti viene impostato).

Segnalibri → Pulisci tutti i segnalibri

  Questo comando rimuoverà tutti i segnalibri dal documento, così come la lista dei segnalibri che si trova sotto questo elemento del menu.

Segnalibri → Precedente (Alt+Pag↑)

  Questo sposterà il cursore all'inizio della prima riga superiore avente un segnalibro. Il testo dell'elemento del menu include il numero di riga e l'inizio del testo della riga. Questo elemento è disponibile solo quando esiste un segnalibro in una riga sopra al cursore.

Segnalibri → Successivo (Alt+Pag↓)

  Sposta il cursore all'inizio della prossima riga avente un segnalibro. La voce nel menu conterrà il numero della riga e il primo pezzo del testo nella riga. Questa voce è disponibile quando esiste un segnalibro in una riga sotto al cursore.

Il menu Sessioni
Il menu Sessioni

## Il menu Sessioni

Questo menu contiene le voci per usare e gestire le sessioni di Kate. Per maggiori informazioni vedi Usare le sessioni.

Sessioni → Nuova

  Crea una nuova sessione vuota. Tutti i file attualmente aperti saranno chiusi.

Sessioni → Apri sessione...

  Apri una sessione esistente. Per permetterti la scelta viene visualizzata la finestra di scelta delle sessioni.

Sessioni → Apri sessione rapidamente

  Questo sotto-menu ti permette di aprire una sessione esistente.

Sessioni → Salva sessione

  Salva la sessione attuale. Se la sessione è anonima ti verrà chiesto di sceglierle un nome.

Sessioni → Salva sessione come...

  Salva la sessione attuale con un nuovo nome. Ti verrà chiesto il nome da usare.

Sessioni → Gestisci sessioni...

  Mostra la finestra di gestione delle sessioni, che ti permette di rinominare e di eliminare le sessioni.

Il menu Strumenti
Il menu Strumenti

## Il menu Strumenti

Strumenti → Modalità di sola lettura

  Imposta il documento attuale nella modalità di sola lettura. Ciò impedisce l'aggiunta di testo e le modifiche alla formattazione del documento.

Strumenti → Modalità

  Scegli lo schema del tipo di file che preferisci per il documento attivo. Questo sostituisce la modalità del tipo di file globale impostata da Impostazioni → Configura Kate... nella scheda Modalità e tipi di file solo per il documento attuale.

Strumenti → Evidenziazione

  Sceglie il tuo schema di evidenziazione preferito per il documento attivo. Questo sostituisce unicamente per il documento attuale quella globale impostata da Impostazioni → Configura editor....

Strumenti → Rientro

  Scegli lo stile di rientro che preferisci per il documento attivo. Questo sostituisce solo per il documento attuale quella globale impostata da Impostazioni → Configura editor....

Strumenti → Codifica

  Puoi sovrascrivere l'impostazione di codifica predefinita in Impostazioni → Configura editor... nella pagina Apri e salva per impostare una differente codifica per il documento corrente. La codifica qui impostata sarà valida unicamente per il documento corrente.

Strumenti → Fine riga

  Sceglie la modalità di fine riga preferita per il documento attivo. Questa avrà priorità rispetto quella globale impostata da Settings → Configura editor... unicamente per il documento corrente.

Strumenti → Aggiungi indicatore dell'ordine dei byte (BOM)

  Attivando questa azione puoi aggiungere esplicitamente un indicatore dell'ordine dei byte per i documenti codificati con Unicode. L'indicatore dell'ordine dei byte (BOM) è un carattere Unicode usato per indicare appunto l'ordine dei byte (in gergo inglese, endianness) di un file o flusso di testo; per maggiori informazioni vedi su Wikipedia.

Strumenti → Script

  Questo sotto-menu contiene un elenco di tutte le azioni di script. L'elenco può essere facilmente modificato scrivendo i tuoi script. In questo modo Kate può essere esteso con strumenti definiti dall'utente.

  C'è un elenco completo di script nella documentazione di KatePart.

Strumenti → Invoca completamento del codice (Ctrl+Spazio)

  Invoca manualmente il completamento del codice, di solito usando una scorciatoia associata a questa azione.

Strumenti → Completamento delle parole

  Riusa parola sotto (Ctrl+9) e Riusa parola sopra (Ctrl+8) completano il testo durante la digitazione, cercando parole simili prima o dopo la posizione attuale. Completamento di shell fa apparire un riquadro di completamento con le voci corrispondenti.

Strumenti → Ortografia → Controllo ortografico automatico (Ctrl+Shift+O)

  Quando il Controllo ortografico automatico è attivo, gli errori di ortografia rilevati vengono immediatamente sottolineati nel documento.

Strumenti → Ortografia → Ortografia...

  Questo avvia il programma di correzione ortografica, che ti aiuta a individuare e correggere gli errori di ortografia.

  Per maggiori informazioni su come usare il programma di correzione ortografica di KDE vedi la sezione Controllo ortografico nella documentazione sui Fondamentali di KDE.

Strumenti → Ortografia → Ortografia (dal cursore)...

  Ciò avvierà il programma di correzione ortografica iniziando dalla posizione corrente del cursore invece che dall'inizio del documento.

Strumenti → Ortografia → Ortografia della selezione...

  Controlla l'ortografia della selezione attuale.

Strumenti → Ortografia → Cambia dizionario

  Visualizza un menu a discesa nella parte bassa della finestra dell'editor, con i dizionari disponibili per la correzione ortografica. Permette di cambiare il dizionario in modo veloce, ad esempio per la correzione ortografica di documenti in più lingue.

I menu Impostazioni e Aiuto
I menu Impostazioni e Aiuto

## I menu Impostazioni e Aiuto

Nel menu di Kate compaiono due voci comuni dei menu di KDE, Impostazioni e Aiuto. Per maggiori informazioni leggi le sezioni Menu impostazioni e Menu di aiuto nei Fondamentali di KDE, con queste voci aggiuntive:

Impostazioni → Tema di colori

  Usa un diverso schema di colori da quelli globali di sistema descritti nel modulo Colori delle Impostazioni di sistema.

Impostazioni → Mostra schede

  Le schede possono essere spostate usando il tasto sinistro del mouse, e hanno delle azioni nel menu contestuale per chiudere i documenti, copiare il percorso negli appunti, o per aprire la cartella del documento nel gestore dei file. Usare il pulsante Apertura rapida rende semplice il passaggio tra i documenti. Fai clic sul pulsante con il tasto sinistro del mouse per aprire un menu con le azioni del menu Visualizza Dividi vista.

Impostazioni → Mostra il percorso nella barra del titolo

  Se abilitato viene visualizzato il percorso completo del documento attivo, diversamente solo il nome del file. Questo è utile se modifichi molti file con lo stesso nome, in modo da poterli distinguere.

Capitolo 9. Configurare Kate
Configurare Kate

# Capitolo 9. Configurare Kate

Anders Lund `<anders@alweb.dk>`

Traduzione della documentazione.: Nicola Ruggero
Aggiornamento della traduzione per Kate 2.5.6: Luciano Montanaro
Aggiornamento per KDE
4.3 e manutenzione: Federico Zenith

## Panoramica

Kate offre molti modi per adattare l'applicazione alle proprie esigenze. I più importanti sono:

La finestra di configurazione

  Lo strumento principale di configurazione permette di configurare l'applicazione Kate, il componente editor e l'uso delle estensioni.

Il menu Impostazioni

  Permette di cambiare le impostazioni usate più spesso e di aprire la finestra di configurazione.

Il menu Visualizza

  Permette di dividere il riquadro attuale, oltre a visualizzare le aree delle icone e dei numeri di riga per il documento su cui stai attualmente lavorando.

Il terminale integrato usa la configurazione definita nelle Impostazioni di sistema, e può anche essere configurato facendo clic con il tasto destro del mouse per visualizzare un menu contestuale.

La finestra di configurazione principale
La finestra di configurazione principale

## La finestra di configurazione principale

La finestra di configurazione di Kate mostra a sinistra un albero di argomenti, e a destra la pagina di configurazione corrispondente all'argomento selezionato.

La configurazione è divisa in due gruppi, cioè:

- Configurazione dell'applicazione

- Configurazione del componente editor

La configurazione dell'applicazione Kate
La configurazione dell'applicazione Kate

## La configurazione dell'applicazione Kate

Questo gruppo contiene le pagine per configurare l'applicazione principale di Kate

### Generale

Questa sezione contiene alcune opzioni globali di Kate.

Comportamento
  Apri ogni documento nella sua finestra

    Se abilitato, ogni documento verrà aperto nella sua finestra, diversamente verrà aperto in una nuova scheda della finestra corrente.

  Passa alla visualizzazione dell'output in base al tipo di messaggio

    Questa opzione permette di configurare quando Kate deve mostrare un pannello di output a seconda del tipo di azione dell'output.

    È possibile scegliere tra Mai, Errore (in case di livello errore), Avviso (in caso di livello avviso o superiore), Informazioni (in caso di livello informazioni o superiore), e Registro (in caso di livello registro o superiore).

  Usa una finestra separata per gestire i file modificati esternamente

    Se questa opzione è abilitata, Kate segnalerà con una finestra modale tutti i file modificati dall'esterno dell'applicazione ogni volta che la finestra principale verrà attivata. Potrai gestire più file modificati alla volta, e puoi ricaricare, salvare o scartare i file modificati in gruppi.

    Se questa opzione è abilitata, Kate chiederà cosa fare per ogni file modificato solo quando la vista di quel file riceve il fuoco.

Apertura rapida
  Modalità di corrispondenza

    Imposta la modalità ad elenco dello strumento Apertura rapida. I file possono essere associati in base al loro nome o al loro percorso.

  Modalità ad elenco

    Imposta la modalità ad elenco dello strumento Apertura rapida. È possibile scegliere tra File del progetto corrente e Tutti i file di progetto.

Schede
  Limita numero di schede

    Imposta il numero massimo di schede. Scegli Illimitato se non vuoi delle restrizioni a questo numero.

  Nascondi schede automaticamente

    Se spuntato, le schede verranno nascoste quando c'è un solo documento aperto.

  Mostra il pulsante Chiudi

    Se spuntato, ogni scheda mostrerà un pulsante di chiusura.

  Espandi schede

    Se spuntato, le schede occuperanno più spazio possibile.

  Un doppio clic apre un nuovo documento

    Se spuntato, un doppio clic apre un nuovo documento.

  Un clic col tasto centrale chiude un documento

    Se spuntato, un clic col tasto centrale chiude un documento.

  Permetti lo scorrimento delle schede

    Se spuntato, questa opzione permetterà di scorrere nella barra delle schede in caso di un numero di schede elevato.

  Elidi il testo della linguetta

    Il testo della linguetta selezionata potrebbe essere eliso se è troppo lungo.

Schede
  Pulsante indietro premuto

    Permette di selezionare l'azione del pulsante indietro del mouse tra le voci Scheda precedente e Cronologia indietro.

  Pulsante avanti premuto

    Permette di selezionare l'azione del pulsante avanti del mouse tra le voci Scheda successiva e Cronologia avanti.

### Sessione

Questa sezione contiene opzioni relative all'uso delle sessioni.

Comportamento dell'applicazione all'avvio

  Seleziona il comportamento di Kate all'avvio. Questa impostazione può essere ignorata specificando cosa fare dalla riga di comando.

  Avvia nuova sessione

    Con questa opzione, Kate creerà una nuova sessione senza nome all'avvio dell'applicazione.

  Carica l'ultima sessione usata

    Kate userà la sessione usata più di recente all'avvio. È comodo se vuoi usare sempre la stessa sessione o se la cambi raramente.

  Scegli a mano una sessione

    Kate mostrerà una finestrella per la scelta della sessione preferita, o caricherà la predefinita se non ne sono state salvate. Questo è il comportamento predefinito. È comodo se usi molte sessioni diverse di frequente.

Comportamento dell'applicazione all'avvio e alla chiusura

  Seleziona quello che vuoi che faccia Kate alla chiusura. È possibile definire quello che Kate dovrebbe Salvare automaticamente e ripristinare.

  File non salvati di nuova creazione

    Con questa voce selezionata Kate salverà automaticamente tutti i nuovi file creati non ancora salvati.

  File con modifiche non salvate

    Questa voce configura Kate per salvare automaticamente allo spegnimento tutti i file con delle modifiche non salvate.

  Chiudi completamente Kate quando viene chiuso l'ultimo file

    Se abilitato, Kate si chiuderà quando verrà chiuso l'ultimo file che è stato modificato, diversamente si aprirà una pagina vuota in modo che potrai iniziare un nuovo file.

Elementi della sessione
  Includi la configurazione della finestra

    Se questa opzione è abilitata, Kate salverà la configurazione della finestra con ogni sessione.

Ricorda le informazioni aggiuntive

  Se questa opzione è abilitata, Kate memorizzerà i metadati come i segnalibri e la configurazione della sessione anche quando chiudi i documenti. I dati saranno usati se il documento non è stato modificato alla riapertura.

Elimina informazioni aggiuntive inutilizzate dopo

  Imposta il massimo numero di giorni per cui conservare le informazioni aggiuntive per i file precedentemente aperti. Questo permette di mantenere la banca dati delle informazioni aggiuntive entro dimensioni ragionevoli.

Tutte le modifiche ai dati della sessione (file aperti e, se abilitata, la configurazione delle finestre) saranno sempre salvate.

### Estensioni

Questa pagina fornisce un elenco delle estensioni installate in Kate. Ciascuna estensione è rappresentata dal suo nome e da una breve descrizione. Puoi spuntare la casella di una voce per abilitarne l'estensione.

Se un'estensione ha delle opzioni di configurazione, apparirà una sezione per accedervi come figlia di questa pagina.

Per maggiori informazioni sulle estensioni disponibili, vedi Capitolo 4, Lavorare con le estensioni.

### Configurazione del componente editor

Per informazioni su questa sezione della finestra di configurazione, vedi la sezione sulla configurazione del componente editor del manuale di KatePart.

### Configurazione con le variabili dei documenti

Per informazioni sull'uso delle variabili dei documenti con Kate, vedi la sezione sulla configurazione delle variabili dei documenti del manuale di KatePart.

Capitolo 10. Riconoscimenti e licenza
Riconoscimenti e licenza

# Capitolo 10. Riconoscimenti e licenza

Kate. Copyright 2000, 2001, 2002 - 2005 - La squadra di sviluppo di Kate.

La squadra di Kate:

Christoph Cullmann `(cullmann AT kde.org)`

  Responsabile progetto & sviluppatore principale

Anders Lund `(anders AT alweb.dk)`

  Sviluppatore principale, evidenziazione del linguaggio Perl, documentazione

Joseph Wenninger `(kde AT jowenn.at)`

  Sviluppatore principale, modalità di evidenziazione

Michael Bartl `(michael.bartl1 AT chello.at)`

  Sviluppatore principale

Phlip `(phlip_cpp AT my-deja.com)`

  Compilatore del progetto

Waldo Bastian `(bastian AT kde.org)`

  L'ingegnoso sistema di buffer

Matt Newell `(newellm AT proaxis.com)`

  Prove...

Michael McCallum `(gholam AT xtra.co.nz)`

  Sviluppatore principale

Jochen Wilhemly `(digisnap AT cs.tu-berlin.de)`

  Autori di KWrite

Michael Koch `(koch AT kde.org)`

  Port di KWrite su KParts

Christian Gebauer `(gebauer AT bigfoot.com)`

  Altro

Simon Hausmann `(hausmann AT kde.org)`

  Altro

Glen Parker `(glenebob AT nwlink.com)`

  Sistema di Annulla/Rifai di KWrite con elenco azioni e integrazione con KSpell

Scott Manson `(sdmanson AT alltel.net)`

  Supporto per l'evidenziazione dei file XML in KWrite

John Firebaugh `(jfirebaugh AT kde.org)`

  Varie patch

Dominik Haumann `(dhdev AT gmx.de)`

  Sviluppatore, procedura guidata evidenziazione

Molta altra gente che ha contribuito:

Matteo Merli `(merlim AT libero.it)`

  Evidenziazione dei file RPM Spec, Diff e altro

Rocky Scaletta `(rocky AT purdue.edu)`

  Evidenziazione per VHDL

Yury Lebedev

  Evidenziazione dei file SQL

Chris Ross

  Evidenziazione per Ferite

Nick Roux

  Evidenziazione per ILERPG

John Firebaugh

  Evidenziazione del Java™ e molto di più

Carsten Niehaus

  Evidenziazione per LATEX

Per Wigren

  Evidenziazione per Makefile, Python

Jan Fritz

  Evidenziazione per Python

Daniel Naber

  Piccole correzioni bug, estensione XML

Documentazione Copyright 2000,2001 Seth Rothberg `(sethmr AT bellatlantic.org)`

Documentazione Copyright 2002, 2003, 2005 Anders Lund `(anders AT alweb.dk)`

Traduzione e manutenzione a cura di Paolo Zamponi`(zapaolo AT email.it)`

Documentazione tradotta da: Nicola Ruggero `(nicola AT nxnt.org)`

Questa documentazione è concessa in licenza sotto i termini della GNU Free Documentation License.

Questo programma è concesso in licenza sotto i termini della GNU General Public License.

Appendice A. Espressioni regolari
Espressioni regolari

# Appendice A. Espressioni regolari

Per informazioni sull'uso delle espressioni regolari in Kate vedi l'appendice Espressioni regolari del manuale di KatePart.