hgbook

changeset 813:15eeeef467d2

Wording and some other miscellaneous changes.
author Giulio@puck
date Sat Aug 15 17:22:37 2009 +0200 (2009-08-15)
parents 42e2c9d47ef4
children 99c201b30491
files it/appA-svn.xml it/ch08-branch.xml it/ch11-template.xml it/ch12-mq.xml it/ch14-hgext.xml it/examples/ch04-resolve.export.it
line diff
     1.1 --- a/it/appA-svn.xml	Sat Aug 15 15:15:39 2009 +0200
     1.2 +++ b/it/appA-svn.xml	Sat Aug 15 17:22:37 2009 +0200
     1.3 @@ -55,7 +55,7 @@
     1.4      <sect2>
     1.5        <title>Convertire molti rami</title>
     1.6  
     1.7 -      <para id="x_708">Il comando <command>hg convert</command> eseguito in precedenza converte solo la cronologia del <literal>trunk</literal> del repository Subversion. Se invece usiamo l'URL <literal>http://python-nose.googlecode.com/svn</literal>, Mercurial individuerà automaticamente le directory <literal>trunk</literal>, <literal>tags</literal> e <literal>branches</literal> che compongono il layout usato di solito dai progetti Subversion e le importerà come rami separati.</para>
     1.8 +      <para id="x_708">Il comando <command>hg convert</command> eseguito in precedenza converte solo la cronologia del <literal>trunk</literal> del repository Subversion. Se invece usiamo l'URL <literal>http://python-nose.googlecode.com/svn</literal>, Mercurial individuerà automaticamente le directory <literal>trunk</literal>, <literal>tags</literal> e <literal>branches</literal> che compongono la struttura usata di solito dai progetti Subversion e le importerà come rami separati.</para>
     1.9  
    1.10        <para id="x_709">Per default, a ogni ramo Subversion importato in Mercurial viene assegnato un nome. Dopo che la conversione si è conclusa, potete ottenere una lista dei nomi dei rami attivi nel repository Mercurial usando <command>hg branches -a</command>. Se preferite importare i rami Subversion senza nomi, passate l'opzione <option>--config convert.hg.usebranchnames=false</option> al comando <command>hg convert</command>.</para>
    1.11  
     2.1 --- a/it/ch08-branch.xml	Sat Aug 15 15:15:39 2009 +0200
     2.2 +++ b/it/ch08-branch.xml	Sat Aug 15 17:22:37 2009 +0200
     2.3 @@ -21,13 +21,13 @@
     2.4  
     2.5      <para id="x_36e">Un'etichetta non è altro che un <quote>nome simbolico</quote> per una revisione. Le etichette esistono puramente per la vostra convenienza: vi offrono un modo comodo e permanente per fare riferimento a una revisione. Mercurial non interpreta in alcun modo i nomi delle etichette che usate, né impone alcuna restrizione sul nome di un'etichetta a parte le poche che sono necessarie affinché l'etichetta possa essere riconosciuta senza ambiguità. Un nome di etichetta non può contenere i seguenti caratteri:</para>
     2.6      <itemizedlist>
     2.7 -      <listitem><para id="x_36f">due punti (ASCII 58,
     2.8 +      <listitem><para id="x_36f">due punti (codice ASCII 58,
     2.9  	  <quote><literal>:</literal></quote>)</para>
    2.10        </listitem>
    2.11 -      <listitem><para id="x_370">ritorno a capo (ASCII 13,
    2.12 +      <listitem><para id="x_370">ritorno a capo (codice ASCII 13,
    2.13  	  <quote><literal>\r</literal></quote>)</para>
    2.14        </listitem>
    2.15 -      <listitem><para id="x_371">nuova riga (ASCII 10,
    2.16 +      <listitem><para id="x_371">nuova riga (codice ASCII 10,
    2.17  	  <quote><literal>\n</literal></quote>)</para>
    2.18        </listitem></itemizedlist>
    2.19  
     3.1 --- a/it/ch11-template.xml	Sat Aug 15 15:15:39 2009 +0200
     3.2 +++ b/it/ch11-template.xml	Sat Aug 15 17:22:37 2009 +0200
     3.3 @@ -113,24 +113,19 @@
     3.4  
     3.5      <itemizedlist>
     3.6        <listitem><para id="x_598"><literal>\</literal>:
     3.7 -	  backslash, <quote><literal>\</literal></quote>, ASCII
     3.8 -	  134.</para>
     3.9 -      </listitem>
    3.10 -      <listitem><para id="x_599"><literal>\n</literal>: nuova riga,
    3.11 -	  ASCII 12.</para>
    3.12 -      </listitem>
    3.13 -      <listitem><para id="x_59a"><literal>\r</literal>: ritorno a capo, ASCII 15.</para>
    3.14 -      </listitem>
    3.15 -      <listitem><para id="x_59b"><literal>\t</literal>: tabulazione, ASCII
    3.16 -	  11.</para>
    3.17 -      </listitem>
    3.18 -      <listitem><para id="x_59c"><literal>\v</literal>: tabulazione verticale, ASCII 13.</para>
    3.19 -      </listitem>
    3.20 -      <listitem><para id="x_59d"><literal>\{</literal>: parentesi graffa aperta, <quote><literal>{</literal></quote>, ASCII
    3.21 -	  173.</para>
    3.22 -      </listitem>
    3.23 -      <listitem><para id="x_59e"><literal>\}</literal>: parentesi graffa chusa, <quote><literal>}</literal></quote>, ASCII
    3.24 -	  175.</para>
    3.25 +	  backslash, <quote><literal>\</literal></quote>, corrispondente al codice ASCII 134.</para>
    3.26 +      </listitem>
    3.27 +      <listitem><para id="x_599"><literal>\n</literal>: nuova riga, codice ASCII 12.</para>
    3.28 +      </listitem>
    3.29 +      <listitem><para id="x_59a"><literal>\r</literal>: ritorno a capo, codice ASCII 15.</para>
    3.30 +      </listitem>
    3.31 +      <listitem><para id="x_59b"><literal>\t</literal>: tabulazione, codice ASCII 11.</para>
    3.32 +      </listitem>
    3.33 +      <listitem><para id="x_59c"><literal>\v</literal>: tabulazione verticale, codice ASCII 13.</para>
    3.34 +      </listitem>
    3.35 +      <listitem><para id="x_59d"><literal>\{</literal>: parentesi graffa aperta, <quote><literal>{</literal></quote>, codice ASCII 173.</para>
    3.36 +      </listitem>
    3.37 +      <listitem><para id="x_59e"><literal>\}</literal>: parentesi graffa chusa, <quote><literal>}</literal></quote>, codice ASCII 175.</para>
    3.38        </listitem></itemizedlist>
    3.39  
    3.40      <para id="x_59f">Come appena indicato, se volete che l'espansione di un template contenga un carattere <quote><literal>\</literal></quote>, <quote><literal>{</literal></quote>, o <quote><literal>{</literal></quote> letterale, dovete effettuarne l'escape.</para>
    3.41 @@ -141,36 +136,36 @@
    3.42  
    3.43      <para id="x_5a0">Alcuni dei risultati dell'espansione dei template non sono immediatamente facili da usare. Mercurial vi permette di specificare una catena opzionale di <emphasis>filtri</emphasis> per modificare il risultato dell'espansione di una parola chiave. Avete già visto in azione un filtro comune, <literal role="template-kw-filt-date">isodate</literal>, usato precedentemente per rendere leggibile una data.</para>
    3.44  
    3.45 -    <para id="x_5a1">Qui di seguito viene presentata una lista dei filtri più comunemente usati che Mercurial supporta. Mentre alcuni filtri possono essere applicati a qualsiasi testo, altri possono essere usati solo in circostanze specifiche. Il nome di ogni filtro è seguito prima da un'indicazione del contesto in cui può essere usato e poi da una descrizione dei suoi effetti.</para>
    3.46 +    <para id="x_5a1">Qui di seguito viene presentata una lista dei filtri più comunemente usati che Mercurial supporta. Mentre alcuni filtri possono essere applicati a qualunque testo, altri possono essere usati solo in circostanze specifiche. Il nome di ogni filtro è seguito prima da un'indicazione del contesto in cui può essere usato e poi da una descrizione dei suoi effetti.</para>
    3.47  
    3.48      <itemizedlist>
    3.49 -      <listitem><para id="x_5a2"><literal role="template-filter">addbreaks</literal>: qualsiasi testo. Aggiunge un elemento XHTML <quote><literal>&lt;br/&gt;</literal></quote> prima della fine di ogni riga tranne l'ultima. Per esempio, <quote><literal>foo\nbar</literal></quote> diventa <quote><literal>foo&lt;br/&gt;\nbar</literal></quote>.</para>
    3.50 +      <listitem><para id="x_5a2"><literal role="template-filter">addbreaks</literal>: qualunque testo. Aggiunge un elemento XHTML <quote><literal>&lt;br/&gt;</literal></quote> prima della fine di ogni riga tranne l'ultima. Per esempio, <quote><literal>foo\nbar</literal></quote> diventa <quote><literal>foo&lt;br/&gt;\nbar</literal></quote>.</para>
    3.51        </listitem>
    3.52        <listitem><para id="x_5a3"><literal role="template-kw-filt-date">age</literal>: parola chiave <literal role="template-keyword">date</literal>. Rappresenta l'età della data, relativa all'ora corrente. Produce stringhe come <quote><literal>10 minuti</literal></quote>.</para>
    3.53        </listitem>
    3.54 -      <listitem><para id="x_5a4"><literal role="template-filter">basename</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">files</literal> e simili. Tratta il testo come un percorso e restituisce il nome di base. Per esempio, <quote><literal>foo/bar/baz</literal></quote> diventa <quote><literal>baz</literal></quote>.</para>
    3.55 +      <listitem><para id="x_5a4"><literal role="template-filter">basename</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">files</literal> e simili. Tratta il testo come un percorso e restituisce il nome di base. Per esempio, <quote><literal>foo/bar/baz</literal></quote> diventa <quote><literal>baz</literal></quote>.</para>
    3.56        </listitem>
    3.57        <listitem><para id="x_5a5"><literal role="template-kw-filt-date">date</literal>: parola chiave <literal role="template-keyword">date</literal>. Presenta una data in un formato simile al comando Unix <literal role="template-keyword">date</literal>, ma includendo il fuso orario. Produce stringhe come <quote><literal>Mon Sep 04 15:13:13 2006 -0700</literal></quote>.</para>
    3.58        </listitem>
    3.59 -      <listitem><para id="x_5a6"><literal role="template-kw-filt-author">domain</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Trova la prima stringa che somiglia a un indirizzo email e ne estrae il componente del dominio. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>serpentine.com</literal></quote>.</para>
    3.60 -      </listitem>
    3.61 -      <listitem><para id="x_5a7"><literal role="template-kw-filt-author">email</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Estrae la prima stringa che somiglia a un indirizzo email. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>bos@serpentine.com</literal></quote>.</para>
    3.62 -      </listitem>
    3.63 -      <listitem><para id="x_5a8"><literal role="template-filter">escape</literal>: qualsiasi testo. Sostituisce i caratteri speciali XML/XHTML <quote><literal>&amp;</literal></quote>, <quote><literal>&lt;</literal></quote> e <quote><literal>&gt;</literal></quote> con entità XML.</para>
    3.64 -      </listitem>
    3.65 -      <listitem><para id="x_5a9"><literal role="template-filter">fill68</literal>: qualsiasi testo. Manda a capo il testo per farlo stare in 68 colonne. Questo filtro è utile da applicare prima di combinarlo con il filtro <literal role="template-filter">tabindent</literal>, se volete che il testo non esca dai bordi di una finestra di 80 colonne con caratteri a spaziatura fissa.</para>
    3.66 -      </listitem>
    3.67 -      <listitem><para id="x_5aa"><literal role="template-filter">fill76</literal>: qualsiasi testo. Manda a capo il testo per farlo stare in 76 colonne.</para>
    3.68 -      </listitem>
    3.69 -      <listitem><para id="x_5ab"><literal role="template-filter">firstline</literal>: qualsiasi testo. Produce la prima riga del testo, senza alcun carattere di nuova riga alla fine.</para>
    3.70 +      <listitem><para id="x_5a6"><literal role="template-kw-filt-author">domain</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Trova la prima stringa che somiglia a un indirizzo email e ne estrae il componente del dominio. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>serpentine.com</literal></quote>.</para>
    3.71 +      </listitem>
    3.72 +      <listitem><para id="x_5a7"><literal role="template-kw-filt-author">email</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Estrae la prima stringa che somiglia a un indirizzo email. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>bos@serpentine.com</literal></quote>.</para>
    3.73 +      </listitem>
    3.74 +      <listitem><para id="x_5a8"><literal role="template-filter">escape</literal>: qualunque testo. Sostituisce i caratteri speciali XML/XHTML <quote><literal>&amp;</literal></quote>, <quote><literal>&lt;</literal></quote> e <quote><literal>&gt;</literal></quote> con entità XML.</para>
    3.75 +      </listitem>
    3.76 +      <listitem><para id="x_5a9"><literal role="template-filter">fill68</literal>: qualunque testo. Manda a capo il testo per farlo stare in 68 colonne. Questo filtro è utile da applicare prima di combinarlo con il filtro <literal role="template-filter">tabindent</literal>, se volete che il testo non esca dai bordi di una finestra di 80 colonne con caratteri a spaziatura fissa.</para>
    3.77 +      </listitem>
    3.78 +      <listitem><para id="x_5aa"><literal role="template-filter">fill76</literal>: qualunque testo. Manda a capo il testo per farlo stare in 76 colonne.</para>
    3.79 +      </listitem>
    3.80 +      <listitem><para id="x_5ab"><literal role="template-filter">firstline</literal>: qualunque testo. Produce la prima riga del testo, senza alcun carattere di nuova riga alla fine.</para>
    3.81        </listitem>
    3.82        <listitem><para id="x_5ac"><literal role="template-kw-filt-date">hgdate</literal>: parola chiave <literal role="template-keyword">date</literal>. Rappresenta la data come una coppia di numeri leggibili. Produce una stringa come <quote><literal>1157407993 25200</literal></quote>.</para>
    3.83        </listitem>
    3.84        <listitem><para id="x_5ad"><literal role="template-kw-filt-date">isodate</literal>: parola chiave <literal role="template-keyword">date</literal>. Rappresenta una data come stringa di testo in formato ISO 8601. Produce una stringa come <quote><literal>2006-09-04 15:13:13 -0700</literal></quote>.</para>
    3.85        </listitem>
    3.86 -      <listitem><para id="x_5ae"><literal role="template-filter">obfuscate</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Riproduce il testo in ingresso rappresentandolo come una sequenza di entità XML. Questo è utile per impedire ad alcuni programmi particolarmente stupidi utilizzati dagli spammer per raccogliere indirizzi email di copiare i dati destinati a essere visualizzati su schermo.</para>
    3.87 -      </listitem>
    3.88 -      <listitem><para id="x_5af"><literal role="template-kw-filt-author">person</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Produce il testo che precede un indirizzo email. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>Bryan O'Sullivan</literal></quote>.</para>
    3.89 +      <listitem><para id="x_5ae"><literal role="template-filter">obfuscate</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Riproduce il testo in ingresso rappresentandolo come una sequenza di entità XML. Questo è utile per impedire ad alcuni programmi particolarmente stupidi utilizzati dagli spammer per raccogliere indirizzi email di copiare i dati destinati a essere visualizzati su schermo.</para>
    3.90 +      </listitem>
    3.91 +      <listitem><para id="x_5af"><literal role="template-kw-filt-author">person</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Produce il testo che precede un indirizzo email. Per esempio, <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>Bryan O'Sullivan</literal></quote>.</para>
    3.92        </listitem>
    3.93        <listitem><para id="x_5b0"><literal role="template-kw-filt-date">rfc822date</literal>: parola chiave <literal role="template-keyword">date</literal>. Rappresenta una data usando lo stesso formato impiegato nelle intestazioni email. Produce una stringa come <quote><literal>Mon, 04 Sep 2006 15:13:13 -0700</literal></quote>.</para>
    3.94        </listitem>
    3.95 @@ -178,13 +173,13 @@
    3.96        </listitem>
    3.97        <listitem><para id="x_5b2"><literal role="template-kw-filt-date">shortdate</literal>: parola chiave <literal role="template-keyword">date</literal>. Rappresenta l'anno, il mese e il giorno della data. Produce una stringa come <quote><literal>2006-09-04</literal></quote>.</para>
    3.98        </listitem>
    3.99 -      <listitem><para id="x_5b3"><literal role="template-filter">strip</literal>: qualsiasi testo. Rimuove lo spazio bianco all'inizio e alla fine di una stringa.</para>
   3.100 -      </listitem>
   3.101 -      <listitem><para id="x_5b4"><literal role="template-filter">tabindent</literal>: qualsiasi testo. Produce il testo, facendo cominciare ogni riga tranne la prima con un carattere di tabulazione.</para>
   3.102 -      </listitem>
   3.103 -      <listitem><para id="x_5b5"><literal role="template-filter">urlescape</literal>: qualsiasi testo. Effettua l'escape di tutti i caratteri che sono considerati <quote>speciali</quote> dai riconoscitori di URL. Per esempio, <literal>foo bar</literal> diventa <literal>foo%20bar</literal>.</para>
   3.104 -      </listitem>
   3.105 -      <listitem><para id="x_5b6"><literal role="template-kw-filt-author">user</literal>: qualsiasi testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Restituisce la porzione dell'<quote>utente</quote> di un indirizzo email. Per esempio <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>bos</literal></quote>.</para>
   3.106 +      <listitem><para id="x_5b3"><literal role="template-filter">strip</literal>: qualunque testo. Rimuove lo spazio bianco all'inizio e alla fine di una stringa.</para>
   3.107 +      </listitem>
   3.108 +      <listitem><para id="x_5b4"><literal role="template-filter">tabindent</literal>: qualunque testo. Produce il testo, facendo cominciare ogni riga tranne la prima con un carattere di tabulazione.</para>
   3.109 +      </listitem>
   3.110 +      <listitem><para id="x_5b5"><literal role="template-filter">urlescape</literal>: qualunque testo. Effettua l'escape di tutti i caratteri che sono considerati <quote>speciali</quote> dai riconoscitori di URL. Per esempio, <literal>foo bar</literal> diventa <literal>foo%20bar</literal>.</para>
   3.111 +      </listitem>
   3.112 +      <listitem><para id="x_5b6"><literal role="template-kw-filt-author">user</literal>: qualunque testo, ma utile soprattutto per la parola chiave <literal role="template-keyword">author</literal>. Restituisce la porzione dell'<quote>utente</quote> di un indirizzo email. Per esempio <quote><literal>Bryan O'Sullivan &lt;bos@serpentine.com&gt;</literal></quote> diventa <quote><literal>bos</literal></quote>.</para>
   3.113        </listitem>
   3.114      </itemizedlist>
   3.115  
     4.1 --- a/it/ch12-mq.xml	Sat Aug 15 15:15:39 2009 +0200
     4.2 +++ b/it/ch12-mq.xml	Sat Aug 15 17:22:37 2009 +0200
     4.3 @@ -23,7 +23,7 @@
     4.4    <sect1 id="sec:mq:history">
     4.5      <title>La preistoria di Mercurial Queues</title>
     4.6  
     4.7 -    <para id="x_3b3">Verso la fine degli anni '90, diversi sviluppatori del kernel di Linux cominciarono a mantenere alcune <quote>serie di patch</quote> che modificavano il comportamento del kernel. Alcune di queste serie si concentravano sulla stabilità, alcune sull'inclusione di funzionalità e altre erano più sperimentali.</para>
     4.8 +    <para id="x_3b3">Verso la fine degli anni '90, diversi sviluppatori del kernel di Linux cominciarono a mantenere alcune <quote>serie di patch</quote> che modificavano il comportamento del kernel. Alcune di queste serie si concentravano sulla stabilità, alcune sull'inclusione di funzioni e altre erano più sperimentali.</para>
     4.9  
    4.10      <para id="x_3b4">La dimensione di queste serie di patch crebbe rapidamente. Nel 2002, Andrew Morton pubblicò alcuni script di shell che aveva usato per automatizzare la gestione delle proprie code di patch. Andrew era riuscito a usare questi script per gestire centinaia (talvolta migliaia) di patch per il kernel di Linux.</para>
    4.11  
    4.12 @@ -196,7 +196,7 @@
    4.13  
    4.14        &interaction.mq.tutorial.add;
    4.15  
    4.16 -      <para id="x_3e2">Tutti i comandi che esaminano la directory di lavoro accettano un'opzione <quote>so cosa sto facendo</quote> che si chiama sempre <option>-f</option>. L'esatto significato di <option>-f</option> dipende dal comando. Per esempio, <command role="hg-cmd">hg qnew <option role="hg-ext-mq-cmd-qnew-opt">-f</option></command> incorporerà i cambiamenti in sospeso nella nuova patch creata, ma <command role="hg-cmd">hg qpop <option role="hg-ext-mq-cmd-qpop-opt">-f</option></command> annullerà le modifiche a qualsiasi file affetto dalla patch che sta estraendo. Assicuratevi di leggere la documentazione per l'opzione <option>-f</option> di un comando prima di usarla!</para>
    4.17 +      <para id="x_3e2">Tutti i comandi che esaminano la directory di lavoro accettano un'opzione <quote>so cosa sto facendo</quote> che si chiama sempre <option>-f</option>. L'esatto significato di <option>-f</option> dipende dal comando. Per esempio, <command role="hg-cmd">hg qnew <option role="hg-ext-mq-cmd-qnew-opt">-f</option></command> incorporerà i cambiamenti in sospeso nella nuova patch creata, ma <command role="hg-cmd">hg qpop <option role="hg-ext-mq-cmd-qpop-opt">-f</option></command> annullerà le modifiche a qualsiasi file coinvolto dalla patch che sta estraendo. Assicuratevi di leggere la documentazione per l'opzione <option>-f</option> di un comando prima di usarla!</para>
    4.18      </sect2>
    4.19  
    4.20      <sect2>
    4.21 @@ -382,7 +382,7 @@
    4.22  
    4.23      <para id="x_418">Il riferimento per indice non è molto diverso. La prima patch visualizzata da <command role="hg-ext-mq">qseries</command> è la patch numero zero (sì, è uno di quei sistemi di conteggio che partono da zero), la seconda è la patch numero uno, e così via.</para>
    4.24  
    4.25 -    <para id="x_419">MQ rende anche più facile lavorare con le patch usando i normali comandi Mercurial. Tutti i comandi che accettano un identificatore di changeset accettano anche il nome di una patch applicata. MQ aggiunge un'etichetta eponima per ogni patch applicata alle etichette normalmente presenti nel repository. In più, le etichette speciali <literal role="tag">qbase</literal> e <literal role="tag">qtip</literal> identificano rispettivamente la prima e l'ultima patch applicata.</para>
    4.26 +    <para id="x_419">MQ rende anche più facile lavorare con le patch usando i normali comandi Mercurial. Tutti i comandi che accettano un identificatore di changeset accettano anche il nome di una patch applicata. MQ aggiunge un'etichetta omonima per ogni patch applicata alle etichette normalmente presenti nel repository. In più, le etichette speciali <literal role="tag">qbase</literal> e <literal role="tag">qtip</literal> identificano rispettivamente la prima e l'ultima patch applicata.</para>
    4.27  
    4.28      <para id="x_41a">Queste aggiunte alla funzione di etichettatura di Mercurial facilitano ulteriormente l'uso delle patch.</para>
    4.29      <itemizedlist>
    4.30 @@ -509,7 +509,7 @@
    4.31      <sect2 id="sec:mq:combine">
    4.32        <title>Combinare intere patch</title>
    4.33  
    4.34 -      <para id="x_43d">MQ vi fornisce il comando <command role="hg-ext-mq">qfold</command> per consentirvi di combinare intere patch. Questo comando <quote>include</quote> le patch che nominate, nell'ordine in cui le nominate, nell'ultima patch applicata e concatena le loro descrizioni aggiungendole alla fine della descrizione di questa patch. Se le patch che includete sono applicate, devono essere estratte prima di poterle includere.</para>
    4.35 +      <para id="x_43d">MQ vi fornisce il comando <command role="hg-ext-mq">qfold</command> per consentirvi di combinare intere patch tra loro. Questo comando <quote>include</quote> le patch che nominate, nell'ordine in cui le nominate, nell'ultima patch applicata e concatena le loro descrizioni aggiungendole alla fine della descrizione di questa patch. Se le patch che includete sono applicate, devono essere estratte prima di poterle includere.</para>
    4.36  
    4.37        <para id="x_43e">L'ordine in cui includete le patch è importante. Se la vostra ultima patch applicata è <literal>foo</literal> e voi utilizzate <command role="hg-ext-mq">qfold</command> per includervi <literal>bar</literal> e <literal>quux</literal>, otterrete una patch che opererà come se aveste applicato prima <literal>foo</literal>, poi <literal>bar</literal>, seguita da <literal>quux</literal>.</para>
    4.38      </sect2>
    4.39 @@ -517,7 +517,7 @@
    4.40      <sect2>
    4.41        <title>Unire parte di una patch a un'altra</title>
    4.42  
    4.43 -      <para id="x_43f">Unire <emphasis>parte</emphasis> di una patch a un'altra patch è più difficile che combinare intere patch.</para>
    4.44 +      <para id="x_43f">Unire <emphasis>parte</emphasis> di una patch a un'altra patch è più difficile che combinare intere patch tra loro.</para>
    4.45  
    4.46        <para id="x_440">Se volete spostare alcune modifiche su interi file, potete usare le opzioni <option role="cmd-opt-filterdiff">-i</option> e <option role="cmd-opt-filterdiff">-x</option> di <command>filterdiff</command> per scegliere le modifiche che desiderate ricavare da una patch, aggiungendo il risultato del comando in coda alla patch a cui unire i cambiamenti. Di solito non avrete bisogno di modificare la patch da cui prelevate le modifiche da unire. Piuttosto, MQ rifiuterà alcune parti della patch quando invocate <command role="hg-ext-mq">qpush</command> su di essa (a causa dei blocchi che avete spostato nell'altra patch) e voi potrete semplicemente aggiornare la patch tramite <command role="hg-ext-mq">qrefresh</command> per scartare i blocchi duplicati.</para>
    4.47  
     5.1 --- a/it/ch14-hgext.xml	Sat Aug 15 15:15:39 2009 +0200
     5.2 +++ b/it/ch14-hgext.xml	Sat Aug 15 17:22:37 2009 +0200
     5.3 @@ -4,7 +4,7 @@
     5.4  
     5.5    <para id="x_4fe">Se da una parte il nucleo di Mercurial è piuttosto completo dal punto di vista delle funzionalità, dall'altra è deliberatamente privo di caratteristiche ornamentali. Questo approccio orientato a preservare la semplicità mantiene il software facile da maneggiare sia per chi ne cura la manutenzione sia per chi lo usa.</para>
     5.6  
     5.7 -  <para id="x_4ff">Tuttavia, Mercurial non vi ingabbia in un insieme di comandi immutabile: potete aggiungere nuove funzioni a Mercurial sotto forma di <emphasis>estensioni</emphasis> (talvolta note come <emphasis>plugin</emphasis>). Abbiamo già discusso alcune di queste estensioni nei capitoli precedenti.</para>
     5.8 +  <para id="x_4ff">Tuttavia, Mercurial non vi vincola a usare un insieme di comandi immutabile: potete aggiungere nuove funzioni a Mercurial sotto forma di <emphasis>estensioni</emphasis> (talvolta note come <emphasis>plugin</emphasis>). Abbiamo già discusso alcune di queste estensioni nei capitoli precedenti.</para>
     5.9    <itemizedlist>
    5.10      <listitem><para id="x_500">La <xref linkend="sec:tour-merge:fetch"/> parla dell'estensione <literal role="hg-ext">fetch</literal>, che combina l'estrazione di nuovi cambiamenti e la loro unione con i cambiamenti locali in un singolo comando, <command role="hg-ext-fetch">fetch</command>.</para>
    5.11      </listitem>
    5.12 @@ -41,7 +41,7 @@
    5.13      <itemizedlist>
    5.14        <listitem><para id="x_50d">L'estensione <literal role="hg-ext">inotify</literal> è specifica per Linux. Dato che si interfaccia direttamente con il sottosistema <literal>inotify</literal> del kernel di Linux, non funziona su altri sistemi operativi.</para>
    5.15        </listitem>
    5.16 -      <listitem><para id="x_50e">L'estensione dovrebbe funzionare su qualsiasi distribuzione Linux rilasciata dopo i primi mesi del 2005. &Egrave; probabile che le distribuzioni più vecchie includano un kernel a cui manca <literal>inotify</literal>, o una versione di <literal>glibc</literal> senza il necessario supporto di interfacciamento.</para>
    5.17 +      <listitem><para id="x_50e">L'estensione dovrebbe funzionare su qualsiasi distribuzione Linux rilasciata dopo i primi mesi del 2005. &Egrave; probabile che le distribuzioni più vecchie includano un kernel a cui manca <literal>inotify</literal>, o una versione di <literal>glibc</literal> senza il necessario supporto di interfaccia.</para>
    5.18        </listitem>
    5.19        <listitem><para id="x_50f">Non tutti i file system sono adatti per essere usati con l'estensione <literal role="hg-ext">inotify</literal>. I file system di rete come NFS sono fuori gioco, per esempio, in particolare se state eseguendo Mercurial su diversi sistemi che montano lo stesso file system di rete. Il sistema <literal>inotify</literal> del kernel non ha alcun modo di sapere quali cambiamenti sono avvenuti su un altro sistema. La maggior parte dei file system locali (e.g. ext3, XFS, ReiserFS) dovrebbe andare bene.</para>
    5.20        </listitem></itemizedlist>
    5.21 @@ -92,7 +92,7 @@
    5.22  
    5.23      <para id="x_51f">Se preferite, potete avviare manualmente un demone di stato usando il comando <command role="hg-ext-inotify">inserve</command>, che vi permette di controllare in maniera leggermente più accurata le modalità di esecuzione del demone. Naturalmente, questo comando sarà disponibile solo nel caso in cui l'estensione <literal role="hg-ext">inotify</literal> sia abilitata.</para>
    5.24  
    5.25 -    <para id="x_520">Quando state usando l'estensione <literal role="hg-ext">inotify</literal>, non dovreste notare <emphasis>nessuna differenza</emphasis> nel comportamento di Mercurial, con la sola eccezione dei comandi relativi allo stato, che vengono eseguiti molto più velocemente di quanto accadeva di solito. Dovreste specificatamente aspettarvi che i comandi non stampino messaggi differenti né restituiscano risultati differenti. Se una di queste situazioni si verifica, vi prego di segnalare il bug.</para>
    5.26 +    <para id="x_520">Quando state usando l'estensione <literal role="hg-ext">inotify</literal>, non dovreste notare <emphasis>nessuna differenza</emphasis> nel comportamento di Mercurial, con la sola eccezione dei comandi relativi allo stato, che vengono eseguiti molto più velocemente di quanto accadeva di solito. Dovreste espressamente aspettarvi che i comandi non stampino messaggi differenti né restituiscano risultati differenti. Se una di queste situazioni si verifica, vi prego di segnalare il bug.</para>
    5.27  
    5.28    </sect1>
    5.29    <sect1 id="sec:hgext:extdiff">
    5.30 @@ -134,12 +134,12 @@
    5.31  
    5.32        <para id="x_52c">Potrebbe essere scomodo ricordare le opzioni sia per il comando <command role="hg-ext-extdiff">extdiff</command> che per il visualizzatore di diff che volete usare, quindi l'estensione <literal role="hg-ext">extdiff</literal> vi permette di definire <emphasis>nuovi</emphasis> comandi che invocheranno il vostro visualizzatore di diff con le opzioni giuste.</para>
    5.33  
    5.34 -      <para id="x_52d">Tutto quello che dovete fare è modificare il vostro file <filename role="special">~/.hgrc</filename> aggiungendo una sezione chiamata <literal role="rc-extdiff">extdiff</literal> dove potete definire molteplici comandi. Ecco come aggiungere un comando <literal>kdiff3</literal>. Una volta che lo avete definito, potete digitare <quote><literal>hg kdiff3</literal></quote> e l'estensione <literal role="hg-ext">extdiff</literal> lancerà <command>kdiff3</command> per voi.</para>
    5.35 +      <para id="x_52d">Tutto quello che dovete fare è modificare il vostro file <filename role="special">~/.hgrc</filename> aggiungendo una sezione chiamata <literal role="rc-extdiff">extdiff</literal> dove potete definire vari comandi. Ecco come aggiungere un comando <literal>kdiff3</literal>. Una volta che lo avete definito, potete digitare <quote><literal>hg kdiff3</literal></quote> e l'estensione <literal role="hg-ext">extdiff</literal> lancerà <command>kdiff3</command> per voi.</para>
    5.36        <programlisting>[extdiff]
    5.37  cmd.kdiff3 =</programlisting>
    5.38 -      <para id="x_52e">Se lasciate vuota la parte destra della definizione, come qui sopra, l'estensione <literal role="hg-ext">extdiff</literal> usa il nome del comando che avete definito come il nome del programma esterno da usare. Ma questi nomi non devono necessariamente essere uguali. Qui di seguito definiamo un comando chiamato <quote><literal>hg wibble</literal></quote> che invoca <command>kdiff3</command>.</para>
    5.39 +      <para id="x_52e">Se lasciate vuota la parte destra della definizione, come qui sopra, l'estensione <literal role="hg-ext">extdiff</literal> usa il nome del comando che avete definito come il nome del programma esterno da usare. Ma questi nomi non devono necessariamente essere uguali. Qui di seguito definiamo un comando chiamato <quote><literal>hg pippo</literal></quote> che invoca <command>kdiff3</command>.</para>
    5.40        <programlisting>[extdiff]
    5.41 - cmd.wibble = kdiff3</programlisting>
    5.42 +cmd.pippo = kdiff3</programlisting>
    5.43  
    5.44        <para id="x_52f">Potete anche specificare le opzioni predefinite con cui volete invocare il vostro programma di visualizzazione di diff. Il prefisso da usare è <quote><literal>opts.</literal></quote>, seguito dal nome del comando a cui applicare le opzioni. Questo esempio definisce un comando <quote><literal>hg vimdiff</literal></quote> che esegue l'estensione <literal>DirDiff</literal> dell'editor <command>vim</command>.</para>
    5.45        <programlisting>[extdiff]
     6.1 --- a/it/examples/ch04-resolve.export.it	Sat Aug 15 15:15:39 2009 +0200
     6.2 +++ b/it/examples/ch04-resolve.export.it	Sat Aug 15 17:22:37 2009 +0200
     6.3 @@ -1,4 +1,4 @@
     6.4  <!-- BEGIN ch04/resolve.export -->
     6.5 -<screen><prompt>$</prompt> <userinput>export HGMERGE=merge</userinput>
     6.6 +<screen><prompt>$</prompt> <userinput>export HGMERGE=false</userinput>
     6.7  </screen>
     6.8  <!-- END ch04/resolve.export -->