<!--pulled in by kwrite too-->
<chapter id="vi-input-mode-chapter">
<chapterinfo>
<authorgroup
><author
>&Erlend.Hamberg; &Erlend.Hamberg.mail; </author>
<othercredit role="translator"
><firstname
>Federico</firstname
><surname
>Zenith</surname
><affiliation
><address
><email
>federico.zenith@member.fsf.org</email
></address
></affiliation
><contrib
>Traduzione della documentazione</contrib
></othercredit
> 
</authorgroup>
</chapterinfo>

<title
>La modalità di inserimento Vi</title>

<sect1 id="vi-mode-sect1">
<title
>Modalità di inserimento Vi</title>

<para
>Lo scopo della modalità Vi non è di essere un sostituto completo di Vim e supportare tutte le sue funzionalità. Il suo scopo è rendere disponibile la modifica del testo <quote
>alla Vim</quote
>, e le abitudini ad essa legate, ai programmi che usano l'editor di testo &kappname; come editor interno.</para>

<para
>La modalità Vi punta ad integrarsi bene con i programmi e devia dal comportamento di Vim quando ciò ha senso. Per esempio, <userinput
><command
>:w</command
></userinput
> aprirà una finestra di salvataggio nella modalità Vi di &kappname;.</para>

<para
>Per abilitare la modalità di inserimento Vi per tutte le nuove viste, vai a <menuchoice
><guimenu
>Impostazioni</guimenu
><guimenuitem
>Configura &kappname;</guimenuitem
><guimenu
>Modifica</guimenu
><guimenuitem
>Modalità di inserimento Vi</guimenuitem
></menuchoice
>. Da questa scheda puoi impostare le opzioni per la modalità di inserimento Vi, e modificarne la mappatura della tastiera. La modalità di inserimento Vi può essere attivata con l'impostazione <guimenuitem
>Modalità di inserimento Vi</guimenuitem
> nel menu <guimenu
>Modifica</guimenu
> (la scorciatoia predefinita è <keycombo action="simul"
><keysym
>Meta</keysym
>&Ctrl;<keycap
>V</keycap
></keycombo
>, dove <keysym
>Meta</keysym
> è normalmente il tasto <keysym
>Windows</keysym
>).</para>

<note>
<para
>Molti comandi da tastiera della modalità Vi sono diversi con le maiuscole, al contrario della maggior parte delle scorciatoie da tastiera di &kde;. Ciò vuol dire che <userinput
>y</userinput
> e <userinput
>Y</userinput
> sono due comandi diversi. Per inserire il comando <userinput
>y</userinput
> (copia), assicurati che <keysym
>Bloc Maiusc</keysym
> sia disattivato e premi <keycap
>Y</keycap
>. Per inserire il comando <userinput
>Y</userinput
> (copia fino alla fine della riga), <keycombo action="simul"
>&Shift;<keycap
>Y</keycap
></keycombo
>.</para>

<para
>Ciò non vale per i comandi che usano il tasto &Ctrl;, che possono essere inseriti indipendentemente dalla modalità di <keycap
>Bloc Maiusc</keycap
> e senza premere &Shift;. Tuttavia, alcuni comandi richiedono l'uso di combinazioni del tasto &Ctrl; con un altro tasto con versione maiuscola. Per esempio, per inserire <quote
><keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
>, <userinput
>h</userinput
></quote
> (passa alla vista divisa a destra), assicurati che <keycap
>Bloc Maiusc</keycap
> sia disattivato, premi <keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
>, rilascia, e quindi premi <keycap
>H</keycap
>.</para>
</note>

<sect2 id="vi-incompatibilities">
<title
>Incompatibilità con Vim</title>

<para
>Ci sono solo alcune poche funzionalità della modalità Vi di &kappname; che non sono compatibili con Vim (non contando quelle mancanti). Sono elencate sotto con le rispettive motivazioni.</para>
<itemizedlist>
<listitem>
<para
>&kappname;: <userinput
>U</userinput
> e <keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> sono il comando rifai.</para>
<para
>Vim: <keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> è il comando rifai normale, <keycap
>U</keycap
> è usato per annullare tutte le ultime modifiche su una riga.</para>
<para
>Il motivo di far funzionare <keycap
>U</keycap
> come azione di rifai nella modalità Vi di &kappname; è che la scorciatoia <keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> è normalmente già presa dalla funzione di sostituzione di &kappname; (ricerca e sostituzione). Normalmente, la modalità Vi non si sovrapporrà alle scorciatoie di &kappname; (questo si può modificare in <menuchoice
><guimenu
>Impostazioni</guimenu
><guimenuitem
>Configura &kappname;</guimenuitem
><guimenu
>Modifica</guimenu
><guimenuitem
>Modalità di inserimento Vi</guimenuitem
></menuchoice
>), quindi un'azione di rifai va resa disponibile anche con una <quote
>normale</quote
> pressione di un tasto. Inoltre, il comportamento del comando <userinput
>U</userinput
> in Vim non si adatta bene al sistema di annullamento interno di &kappname;, quindi sarebbe comunque difficile da supportare.</para>
</listitem>
<listitem>
<para
>&kappname;: <userinput
><command
>print</command
></userinput
> mostra la finestra di <guilabel
>Stampa</guilabel
>.</para>
<para
>Vim: <userinput
><command
>print</command
></userinput
> stampa le righe dell'intervallo dato, come nel suo antenato <application
>ed</application
>.</para>
<para
>I comandi come <userinput
><command
>:print</command
></userinput
> sono disponibili non solo nella modalità Vi, ma anche per gli utenti del &kappname; <quote
>normale</quote
>; quindi il comando <userinput
><command
>:print</command
></userinput
> apre la finestra di stampa, seguendo il principio di minima sorpresa invece di imitare il comportamento di Vim.</para>
</listitem>
<listitem>
<para
>&kappname;: <userinput
>Y</userinput
> copia fino alla fine della riga.</para>
<para
>Vim: <userinput
>Y</userinput
> copia tutta la riga, come <userinput
>y</userinput
><userinput
>y</userinput
>.</para>
<para
>Il comportamento di Vi per il comando <userinput
>Y</userinput
> è in pratica un errore. Sia per il comando di modifica che di cancellazione, <userinput
>cc</userinput
>/<userinput
>dd</userinput
> eseguiranno la loro azione sulla riga attuale, mentre <userinput
>C</userinput
>/<userinput
>D</userinput
> funzioneranno dalla colonna del cursore fino alla fine della riga. Tuttavia, sia <userinput
>yy</userinput
> che <userinput
>Y</userinput
> copiano la riga attuale. Nella modalità Vi di &kappname;, <userinput
>Y</userinput
> copierà fino alla fine della riga. Ciò è descritto come <quote
>più logico</quote
> nella <ulink url="http://vimdoc.sourceforge.net/htmldoc/change.html#Y"
>documentazione di Vim</ulink
>. </para>
</listitem>
<listitem>
<para
>&kappname;: <userinput
>O</userinput
> e <userinput
>o</userinput
> aprono [<replaceable
>tot</replaceable
>] nuove righe e mettono in modalità di inserimento</para>
<para
>Vim: <userinput
>O</userinput
> e <userinput
>o</userinput
> aprono una nuova riga e inseriscono del testo [<replaceable
>tot</replaceable
>] volte all'uscita dalla modalità di inserimento.</para>
<para
>Questo è motivato essenzialmente dalla confusione di molte persone da parte di questo comportamento su un canale IRC su Vim (#vim su freenode).</para>
</listitem>
</itemizedlist>

</sect2>

<sect2 id="vi-switching-modes">
<title
>Cambiare modalità</title>

<itemizedlist>
<listitem>
<para
>La <emphasis
>modalità normale</emphasis
> permette di inserire comandi per navigare o modificare un documento, ed è quella predefinita. Puoi tornarci da qualsiasi altra modalità premendo &Esc;. </para
></listitem>
<listitem>
<para
>La <emphasis
>modalità visuale</emphasis
> permette di evidenziare del testo in un documento. La maggior parte dei comandi sono validi anche in questa modalità. Puoi attivarla premendo <userinput
>v</userinput
> per selezionare caratteri o <userinput
>V</userinput
> per selezionare righe. </para
></listitem>
<listitem>
<para
>La <emphasis
>modalità di inserimento</emphasis
> permette di modificare il documento direttamente. Puoi attivarla premendo <userinput
>i</userinput
> o uno dei diversi comandi elencati sotto. </para
></listitem>
<listitem>
<para
>La <emphasis
>modalità di comando</emphasis
> invoca la riga di comando di &kappname;, permettendo di eseguire molti comandi disponibili nelle implementazioni di Vi oltre ad alcuni specifici di &kappname;. Per maggiori informazioni, vedi <xref linkend="advanced-editing-tools-commandline"/>. Per usarla, premi <keycap
>:</keycap
>, inserisci il comando e premi &Enter;.</para>
</listitem>
</itemizedlist>
<!-- add a picture like http://de.wikipedia.org/wiki/Vi#Arbeitsmodi here? -->
</sect2>

<sect2 id="vi-integration">
<title
>Integrazione con le funzionalità di &kate;</title>
<itemizedlist>

<listitem>
<para
>La modalità visuale è attivata automaticamente quando si seleziona del testo col mouse. È attivata anche quando si usano funzioni di &kate; che selezionano del testo, come <guilabel
>Seleziona tutto</guilabel
> (dal menu o con <keycombo action="simul"
>&Ctrl;<keycap
>A</keycap
></keycombo
>).</para>
</listitem>

<listitem>
<para
>Gli indicatori di Vi e i <link linkend="kate-part-bookmarks"
>segnalibri di &kate;</link
> sono integrati. Quando si crea un indicatore in modalità Vi, viene creato un segnalibro di &kate; corrispondente e appare nel menu <guimenu
>Segnalibri</guimenu
>. Allo stesso modo, quando si crea un segnalibro di &kate;, viene anche creato un indicatore di Vi alla colonna 0.</para>
</listitem>

</itemizedlist>
</sect2>

<sect2 id="vi-normal-visual-mode-commands">
<title
>Comandi supportati nelle modalità normale e visuale</title>

<informaltable>
<tgroup cols="2">
<!--thead>
<row>
<entry
><para
>Key</para
></entry>
<entry
><para
>Command</para
></entry>
</row>
</thead-->
<tbody>
<row
><entry
><para
><userinput
>a</userinput
></para
></entry>
<entry
><para
>Entra nella modalità di inserimento; aggiungi dopo il cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>A</userinput
></para
></entry>
<entry
><para
>Entra nella modalità di inserimento; aggiungi dopo la riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>i</userinput
></para
></entry>
<entry
><para
>Entra nella modalità di inserimento; aggiungi prima del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>v</userinput
></para
></entry>
<entry
><para
>Entra nella modalità visuale; seleziona caratteri</para
></entry>
</row>
<row
><entry
><para
><userinput
>V</userinput
></para
></entry>
<entry
><para
>Entra nella modalità visuale; seleziona righe</para
></entry>
</row>
<row
><entry
><para
><userinput
>o</userinput
></para
></entry>
<entry
><para
>Apre una nuova riga sotto l'attuale</para
></entry>
</row>
<row
><entry
><para
><userinput
>O</userinput
></para
></entry>
<entry
><para
>Apre una nuova riga sopra l'attuale</para
></entry>
</row>
<row
><entry
><para
><userinput
>J</userinput
></para
></entry>
<entry
><para
>Unisci righe</para
></entry>
</row>
<row
><entry
><para
><userinput
>c</userinput
></para
></entry>
<entry
><para
>Modifica: fai seguire un movimento per cancellare e entrare nella modalità di inserimento</para
></entry>
</row>
<row
><entry
><para
><userinput
>C</userinput
></para
></entry>
<entry
><para
>Modifica fino alla fine della riga: cancella fino alla fine della riga ed entra in modalità di inserimento</para
></entry>
</row>
<row
><entry
><para
><userinput
>cc</userinput
></para
></entry>
<entry
><para
>Modifica riga: cancella la riga e entra nella modalità di inserimento</para
></entry>
</row>
<row
><entry
><para
><userinput
>s</userinput
></para
></entry>
<entry
><para
>Carattere sostitutivo</para
></entry>
</row>
<row
><entry
><para
><userinput
>S</userinput
></para
></entry>
<entry
><para
>Riga sostitutiva</para
></entry>
</row>
<row
><entry
><para
><userinput
>dd</userinput
></para
></entry>
<entry
><para
>Cancella riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>d</userinput
></para
></entry>
<entry
><para
>Fai seguire un movimento per cancellare</para
></entry>
</row>
<row
><entry
><para
><userinput
>D</userinput
></para
></entry>
<entry
><para
>Cancella fino alla fine della riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>x</userinput
></para
></entry>
<entry
><para
>Cancella il carattere alla destra del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>X</userinput
></para
></entry>
<entry
><para
>Cancella il carattere alla sinistra del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>gu</userinput
></para
></entry>
<entry
><para
>Fai seguire un movimento per mettere in minuscolo</para
></entry>
</row>
<row
><entry
><para
><userinput
>g</userinput
></para
></entry>
<entry
><para
>Metti la riga attuale in minuscolo</para
></entry>
</row>
<row
><entry
><para
><userinput
>gU</userinput
></para
></entry>
<entry
><para
>Fai seguire un movimento per mettere in maiuscolo</para
></entry>
</row>
<row
><entry
><para
><userinput
>g</userinput
></para
></entry>
<entry
><para
>Metti la riga attuale in maiuscolo</para
></entry>
</row>
<row
><entry
><para
><userinput
>y</userinput
></para
></entry>
<entry
><para
>Fai seguire un movimento per copiare</para
></entry>
</row>
<row
><entry
><para
><userinput
>yy</userinput
></para
></entry>
<entry
><para
>Copia riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>Y</userinput
></para
></entry>
<entry
><para
>Copia riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>p</userinput
></para
></entry>
<entry
><para
>Incolla dopo il cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>P</userinput
></para
></entry>
<entry
><para
>Incolla prima del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>r</userinput
></para
></entry>
<entry
><para
>Fai seguire un carattere per sostituire il carattere dopo il cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>:</userinput
></para
></entry>
<entry
><para
>Entra nella modalità di comando</para
></entry>
</row>
<row
><entry
><para
><userinput
>/</userinput
></para
></entry>
<entry
><para
>Cerca</para
></entry>
</row>
<row
><entry
><para
><userinput
>u</userinput
></para
></entry>
<entry
><para
>Annulla</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
></para
></entry>
<entry
><para
>Rifai</para
></entry>
</row>
<row
><entry
><para
><userinput
>U</userinput
></para
></entry>
<entry
><para
>Rifai</para
></entry>
</row>
<row
><entry
><para
><userinput
>m</userinput
></para
></entry>
<entry
><para
>Imposta indicatore (può essere usato in seguito dai movimenti)</para
></entry>
</row>
<row
><entry
><para
><userinput
>n</userinput
></para
></entry>
<entry
><para
>Trova successivo</para
></entry>
</row>
<row
><entry
><para
><userinput
>N</userinput
></para
></entry>
<entry
><para
>Trova precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>&gt;&gt;</userinput
></para
></entry>
<entry
><para
>Fai rientrare la riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>&lt;&lt;</userinput
></para
></entry>
<entry
><para
>Riduci il rientro della riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>&gt;</userinput
></para
></entry>
<entry
><para
>Fai rientrare le righe</para
></entry>
</row>
<row
><entry
><para
><userinput
>&lt;</userinput
></para
></entry>
<entry
><para
>Riduci il rientro delle righe</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>F</keycap
></keycombo
></para
></entry>
<entry
><para
>Pagina giù</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>B</keycap
></keycombo
></para
></entry>
<entry
><para
>Pagina su</para
></entry>
</row>
<row
><entry
><para
><userinput
>ga</userinput
></para
></entry>
<entry
><para
>Stampa il valore ASCII del carattere</para
></entry>
</row>
<row
><entry
><para
><userinput
>.</userinput
></para
></entry>
<entry
><para
>Ripeti l'ultima modifica</para
></entry>
</row>
<row
><entry
><para
><userinput
>==</userinput
></para
></entry>
<entry
><para
>Allinea la riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>=</userinput
></para
></entry>
<entry
><para
>Allinea le righe</para
></entry>
</row>
<row
><entry
><para
><userinput
>~</userinput
></para
></entry>
<entry
><para
>Cambia tra versione maiuscola o minuscola del carattere attuale</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>S</keycap
></keycombo
></para
></entry>
<entry
><para
>Dividi la vista orizzontalmente</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>V</keycap
></keycombo
></para
></entry>
<entry
><para
>Dividi la vista verticalmente</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
>, <userinput
>w</userinput
></para
></entry>
<entry
><para
>Passa alla prossima finestra divisa</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
>, <userinput
>h</userinput
></para>
<para
><keycombo action="seq"
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
><keycap
>←</keycap
></keycombo
></para
></entry>
<entry
><para
>Passa alla finestra divisa a sinistra</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
>, <userinput
>l</userinput
></para>
<para
><keycombo action="seq"
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
><keycap
>→</keycap
></keycombo
></para
></entry>
<entry
><para
>Passa alla finestra divisa a destra</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
>, <userinput
>k</userinput
></para>
<para
><keycombo action="seq"
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
><keycap
>↑</keycap
></keycombo
></para
></entry>
<entry
><para
>Passa alla finestra divisa sopra</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
>, <userinput
>j</userinput
></para>
<para
><keycombo action="seq"
><keycombo action="simul"
>&Ctrl; <keycap
>W</keycap
></keycombo
><keycap
>↓</keycap
></keycombo
></para
></entry>
<entry
><para
>Passa alla finestra divisa sotto</para
></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect2>

<sect2 id="vi-supported-motions">
<title
>Movimenti supportati</title>

<para
>Questi possono essere usati per spostarsi in un documento nelle modalità normale o visuale, o in congiunzione con uno dei comandi sopracitati. Possono essere preceduti da un conto, che indica quanti movimenti effettuare.</para>

<informaltable>
<tgroup cols="2">
<!--thead>
<row>
<entry
><para
>Key</para
></entry>
<entry
><para
>Command</para
></entry>
</row>
</thead-->
<tbody>
<row
><entry
><para
><userinput
>h</userinput
></para
></entry>
<entry
><para
>Sinistra</para
></entry>
</row>
<row
><entry
><para
><keysym
>←</keysym
></para
></entry>
<entry
><para
>Sinistra</para
></entry>
</row>
<row
><entry
><para
>&Backspace;</para
></entry>
<entry
><para
>Sinistra</para
></entry>
</row>
<row
><entry
><para
><userinput
>j</userinput
></para
></entry>
<entry
><para
>Giù</para
></entry>
</row>
<row
><entry
><para
><keysym
>↓</keysym
></para
></entry>
<entry
><para
>Giù</para
></entry>
</row>
<row
><entry
><para
><userinput
>k</userinput
></para
></entry>
<entry
><para
>Su</para
></entry>
</row>
<row
><entry
><para
><keysym
>↑</keysym
></para
></entry>
<entry
><para
>Su</para
></entry>
</row>
<row
><entry
><para
><userinput
>l</userinput
></para
></entry>
<entry
><para
>Destra</para
></entry>
</row>
<row
><entry
><para
><keysym
>→</keysym
></para
></entry>
<entry
><para
>Destra</para
></entry>
</row>
<row
><entry
><para
><keysym
>Spazio</keysym
></para
></entry>
<entry
><para
>Destra</para
></entry>
</row>
<row
><entry
><para
><userinput
>$</userinput
></para
></entry>
<entry
><para
>Fine riga</para
></entry>
</row>
<row
><entry
><para
><keycap
>Fine</keycap
></para
></entry>
<entry
><para
>Fine riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>0</userinput
></para
></entry>
<entry
><para
>Primo carattere della riga (colonna 0)</para
></entry>
</row>
<row
><entry
><para
><keycap
>Home</keycap
></para
></entry>
<entry
><para
>Primo carattere della riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>^</userinput
></para
></entry>
<entry
><para
>Primo carattere non vuoto della riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>f</userinput
></para
></entry>
<entry
><para
>Fai seguire un carattere da spostare alla destra del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>F</userinput
></para
></entry>
<entry
><para
>Fai seguire un carattere da spostare alla sinistra del cursore</para
></entry>
</row>
<row
><entry
><para
><userinput
>t</userinput
></para
></entry>
<entry
><para
>Fai seguire un carattere da spostare alla destra del cursore, mettendo il cursore sul carattere precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>T</userinput
></para
></entry>
<entry
><para
>Fai seguire un carattere da spostare alla sinistra del cursore, mettendo il cursore sul carattere precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>gg</userinput
></para
></entry>
<entry
><para
>Prima riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>G</userinput
></para
></entry>
<entry
><para
>Ultima riga</para
></entry>
</row>
<row
><entry
><para
><userinput
>w</userinput
></para
></entry>
<entry
><para
>Parola successiva</para
></entry>
</row>
<row
><entry
><para
><userinput
>W</userinput
></para
></entry>
<entry
><para
>Parola successiva separata da spazi</para
></entry>
</row>
<row
><entry
><para
><userinput
>b</userinput
></para
></entry>
<entry
><para
>Parola precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>B</userinput
></para
></entry>
<entry
><para
>Parola precedente separata da spazi</para
></entry>
</row>
<row
><entry
><para
><userinput
>e</userinput
></para
></entry>
<entry
><para
>Fine della parola</para
></entry>
</row>
<row
><entry
><para
><userinput
>E</userinput
></para
></entry>
<entry
><para
>Fine della parola separata da spazi</para
></entry>
</row>
<row
><entry
><para
><userinput
>ge</userinput
></para
></entry>
<entry
><para
>Fine della parola precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>gE</userinput
></para
></entry>
<entry
><para
>Fine della parola precedente separata da spazi</para
></entry>
</row>
<row
><entry
><para
><userinput
>|</userinput
></para
></entry>
<entry
><para
>Fai seguire il numero della colonna a cui spostarsi</para
></entry>
</row>
<row
><entry
><para
><userinput
>%</userinput
></para
></entry>
<entry
><para
>Fai seguire un elemento a cui spostarsi</para
></entry>
</row>
<row
><entry
><para
><userinput
>`</userinput
></para
></entry>
<entry
><para
>Indicatore</para
></entry>
</row>
<row
><entry
><para
><userinput
>‘</userinput
></para
></entry>
<entry
><para
>Primo carattere non di spaziatura della riga su cui è l'indicatore</para
></entry>
</row>
<row
><entry
><para
><userinput
>[[</userinput
></para
></entry>
<entry
><para
>Quadra aperta precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>]]</userinput
></para
></entry>
<entry
><para
>Quadra aperta successiva</para
></entry>
</row>
<row
><entry
><para
><userinput
>[]</userinput
></para
></entry>
<entry
><para
>Quadra chiusa precedente</para
></entry>
</row>
<row
><entry
><para
><userinput
>][</userinput
></para
></entry>
<entry
><para
>Quadra chiusa successiva</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>I</keycap
></keycombo
></para
></entry>
<entry
><para
>Salta in avanti alla posizione successiva</para
></entry
></row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>O</keycap
></keycombo
></para
></entry>
<entry
><para
>Salta indietro alla posizione precedente</para
></entry
></row>
<row
><entry
><para
><userinput
>H</userinput
></para
></entry>
<entry
>Vai alla prima riga della schermata</entry
></row>
<row
><entry
><para
><userinput
>M</userinput
></para
></entry>
<entry
>Vai al centro della schermata</entry
></row>
<row
><entry
><para
><userinput
>L</userinput
></para
></entry>
<entry
>Vai all'ultima riga della schermata</entry
></row>
<row
><entry
><para
><userinput
>%<replaceable
>percentuale</replaceable
></userinput
></para
></entry>
<entry
><para
>Vai alla percentuale specificata del documento</para
></entry
></row>
<row
><entry
><para
><userinput
>gk</userinput
></para
></entry>
<entry
><para
>Sali di una riga visualmente (quando si usa il ritorno a capo dinamico)</para
></entry
></row>
<row
><entry
><para
><userinput
>gj</userinput
></para
></entry>
<entry
><para
>Scendi di una riga visualmente (quando si usa il ritorno a capo dinamico)</para
></entry
></row>
</tbody>
</tgroup>
</informaltable>
</sect2>

<sect2 id="vi-supported-text-objects">
<title
>Oggetti di testo supportati</title>

<para
>Questi si possono usare per selezionare certe porzioni di un documento.</para>

<informaltable>
<tgroup cols="2">
<!--thead>
<row>
<entry
><para
>Key</para
></entry>
<entry
><para
>Command</para
></entry>
</row>
</thead-->
<tbody>
<row
><entry
><para
><userinput
>iw</userinput
></para
></entry>
<entry
><para
>Parola interna: parola con spazi inclusi</para
></entry>
</row>
<row
><entry
><para
><userinput
>aw</userinput
></para
></entry>
<entry
><para
>Una parola: parola senza spazi</para
></entry>
</row>
<row
><entry
><para
><userinput
>i"</userinput
></para
></entry>
<entry
><para
>Dalle virgolette doppie (<userinput
>"</userinput
>) precedenti alle successive, virgolette incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a”</userinput
></para
></entry>
<entry
><para
>Dalle virgolette doppie (<userinput
>"</userinput
>) precedenti alle successive, virgolette escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i'</userinput
></para
></entry>
<entry
><para
>Dalle virgolette singole (<userinput
>'</userinput
>) precedenti alle successive, virgolette incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a'</userinput
></para
></entry>
<entry
><para
>Dalle virgolette singole (<userinput
>'</userinput
>) precedenti alle successive, virgolette escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i(</userinput
></para
></entry>
<entry
><para
>Dalla parentesi aperta precedente [<userinput
>(</userinput
>] alla chiusa successiva [<userinput
>)</userinput
>], parentesi incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a(</userinput
></para
></entry>
<entry
><para
>Dalla parentesi aperta precedente [<userinput
>(</userinput
>] alla chiusa successiva [<userinput
>)</userinput
>], parentesi escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i[</userinput
></para
></entry>
<entry
><para
>Dalla parentesi quadra aperta precedente (<userinput
>[</userinput
>) alla chiusa successiva (<userinput
>]</userinput
>), parentesi quadre incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a[</userinput
></para
></entry>
<entry
><para
>Dalla parentesi quadra aperta precedente (<userinput
>[</userinput
>) alla chiusa successiva (<userinput
>]</userinput
>), parentesi quadre escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i{</userinput
></para
></entry>
<entry
><para
>Dalla parentesi graffa aperta precedente (<userinput
>{</userinput
>) alla chiusa successiva (<userinput
>}</userinput
>), parentesi graffe incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a{</userinput
></para
></entry>
<entry
><para
>Dalla parentesi graffa aperta precedente (<userinput
>{</userinput
>) alla chiusa successiva (<userinput
>}</userinput
>), parentesi graffe escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i&lt;</userinput
></para
></entry>
<entry
><para
>Dalla parentesi angolata aperta precedente (<userinput
>&lt;</userinput
>) alla chiusa successiva (<userinput
>&gt;</userinput
>), parentesi angolate incluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>a&lt;</userinput
></para
></entry>
<entry
><para
>Dalla parentesi angolata aperta precedente (<userinput
>&lt;</userinput
>) alla chiusa successiva (<userinput
>&gt;</userinput
>), parentesi angolate escluse</para
></entry>
</row>
<row
><entry
><para
><userinput
>i`</userinput
></para
></entry>
<entry
><para
>Dall'accento grave precedente (<userinput
>`</userinput
>) al successivo, accenti inclusi</para
></entry>
</row>
<row
><entry
><para
><userinput
>a`</userinput
></para
></entry>
<entry
><para
>Dall'accento grave precedente (<userinput
>`</userinput
>) al successivo, accenti esclusi</para
></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect2>

<sect2 id="vi-insert-mode-commands">
<title
>Comandi supportati nella modalità di inserimento</title>

<informaltable>
<tgroup cols="2">
<!--thead>
<row>
<entry
><para
>Key</para
></entry>
<entry
><para
>Command</para
></entry>
</row>
</thead-->
<tbody>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>D</keycap
></keycombo
></para
></entry>
<entry
><para
>Riduci rientro</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>T</keycap
></keycombo
></para
></entry>
<entry
><para
>Fai rientrare</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>E</keycap
></keycombo
></para
></entry>
<entry
><para
>Comando per inserire carattere dalla riga sottostante</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>Y</keycap
></keycombo
></para
></entry>
<entry
><para
>Elimina parola</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
></para
></entry>
<entry
><para
>Elimina parola</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>Home</keycap
></keycombo
></para
></entry>
<entry
><para
>Vai al primo carattere del documento</para
></entry>
</row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> <userinput
><replaceable
>n</replaceable
></userinput
></para
></entry>
<entry
>Inserisce i contenuti del registro <replaceable
>n</replaceable
></entry
></row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>O</keycap
></keycombo
>, <replaceable
>comando</replaceable
></para
></entry>
<entry
><para
>Entra nella modalità normale per un solo comando</para
></entry
></row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>A</keycap
></keycombo
></para
></entry>
<entry
><para
>Incrementa il numero attualmente selezionato</para
></entry
></row>
<row
><entry
><para
><keycombo action="simul"
>&Ctrl;<keycap
>X</keycap
></keycombo
></para
></entry>
<entry
><para
>Decrementa il numero attualmente selezionato</para
></entry
></row>
</tbody>
</tgroup>
</informaltable>
</sect2>

<sect2 id="vi-text-object">
<title
>L'oggetto di testo tra virgole</title>

<para
>Questo oggetto non è presente in Vim. L'oggetto di testo tra virgole facilita la modifica di elenchi di parametri in linguaggi simili al C e in altri elenchi separati da virgole. È sostanzialmente l'area tra due virgole o tra una virgola e una parentesi. In questa riga mostrata nell'illustrazione a destra, i tre intervalli coperti da questo oggetto di testo sono evidenziati in rosso.</para>

<screenshot id="screenshot-resources">
<screeninfo
>Un esempio di oggetto di testo tra virgole</screeninfo>
<mediaobject>
<imageobject
><imagedata fileref="comma-to.png" format="PNG"/></imageobject>
<textobject
><phrase
>Un esempio di oggetto di testo tra virgole</phrase
></textobject>
<caption
><para
>Intervalli degli oggetti di testo tra virgole. Se il cursore è per esempio su <replaceable
>arg2</replaceable
>, premere <userinput
>ci</userinput
> (<quote
>cambia tra virgole</quote
>) eliminerebbe <replaceable
>double arg2</replaceable
> e posizionerebbe il cursore tra le due virgole in modalità di inserimento. Un modo molto comodo per cambiare i parametri di una funzione.</para
></caption>
</mediaobject>
</screenshot>

</sect2>

<sect2 id="vi-missing-features">
<title
>Funzionalità mancanti</title>

<para
>Come già menzionato, l'obbiettivo della modalità Vi di &kappname; non è supportare il 100% delle funzionalità di Vim; ce ne sono alcune che purtroppo mancano:</para>
<itemizedlist>
<listitem>
<para
>Modalità di blocco visuale, soprattutto la possibilità di aggiungere testo all'inizio o alla fine della selezione del blocco visuale.</para
></listitem>
<listitem>
<para
>Avere i comandi <application
>ex</application
> disponibili in altri programmi oltre all'applicazione di &kappname;.</para
></listitem>
<listitem>
<para
>Il codice di ricerca ha bisogno di miglioramenti, e i comandi <userinput
>*</userinput
> e <userinput
>#</userinput
> dovrebbero essere normali ricerche.</para
></listitem>
</itemizedlist>
</sect2>

</sect1>

</chapter>
