è uno strumento grafico per l\*(Aqunione e il confronto di file di testo\&.
Diffuse
è in grado di confrontare uno a fianco all\*(Aqaltro un qualsiasi numero di file e fornisce all\*(Aqutente la possibilità di correggere manualmente la corrispondenza fra le righe e di modificare i file\&.
è anche in grado di recuperare le revisioni dei file dai repository Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS e Subversion per confrontarle e unirle\&.
Se viene specificata una opzione di aiuto, questa deve essere l\*(Aqunico argomento inserito nella linea di comando\&.
Diffuse
uscirà subito dopo aver visualizzato le informazioni\&.
.PP
\fB\-h\fR, \fB\-?\fR, \fB\-\-help\fR
.RS4
Mostra le informazioni di utilizzo\&.
.RE
.PP
\fB\-v\fR, \fB\-\-version\fR
.RS4
Mostra la versione e il copyright\&.
.RE
.SS"Opzioni di configurazione"
.PP
Se viene specificata una opzione di configurazione, questa deve essere il primo argomento indicato nella riga di comando\&.
.PP
\fB\-\-no\-rcfile\fR
.RS4
Non legge alcun file di inizializzazione\&.
.RE
.PP
\fB\-\-rcfile \fR\fB\fIfile\fR\fR
.RS4
Legge i comandi di inizializzazione esclusivamente dal file
\fIfile\fR\&.
.RE
.SS"Opzioni generali"
.PP
\fB\-c\fR, \fB\-\-commit\fR\fIrev\fR
.RS4
Apre delle schede di confronto separate per tutti i file interessati dal commit
\fIrev\fR
dai restanti percorsi indicati tra gli argomenti della linea di comando\&.
.RE
.PP
\fB\-D\fR, \fB\-\-close\-if\-same\fR
.RS4
Chiude tutte le schede senza differenze\&.
.RE
.PP
\fB\-e\fR, \fB\-\-encoding\fR\fIcodec\fR
.RS4
Usa
\fIcodec\fR
per leggere e scrivere i file\&.
.RE
.PP
\fB\-L\fR, \fB\-\-label\fR\fIetichetta\fR
.RS4
Visualizza
\fIetichetta\fR
invece del nome del file\&.
.RE
.PP
\fB\-m\fR, \fB\-\-modified\fR
.RS4
Apre delle schede di confronto separate per tutti gli elementi modificati dai restanti percorsi indicati tra gli argomenti della linea di comando\&.
.RE
.PP
\fB\-r\fR, \fB\-\-revision\fR\fIrev\fR
.RS4
Include nella scheda di confronto dei file la revisione
\fIrev\fR
del file successivo contenuto negli argomenti della linea di comando\&.
.RE
.PP
\fB\-s\fR, \fB\-\-separate\fR
.RS4
Apre tutti i restanti file specificati come argomento della linea di comando in schede di confronto separate\&.
.RE
.PP
\fB\-t\fR, \fB\-\-tab\fR
.RS4
Apre una nuova scheda per ogni altro file indicato come argomento della riga di comando\&.
.RE
.PP
\fB\-\-line \fR\fB\fIlinea\fR\fR
.RS4
Inizia con la
\fIlinea\fR
selezionata\&.
.RE
.PP
\fB\-\-null\-file\fR
.RS4
Crea un riquadro di confronto vuoto\&.
.RE
.SS"Opzioni di visualizzazione"
.PP
Le opzioni di visualizzazione indicate come argomenti della linea di comando hanno la precedenza sui valori salvati delle preferenze\&.
.PP
\fB\-b\fR, \fB\-\-ignore\-space\-change\fR
.RS4
Ignora i cambiamenti del numero di spazi vuoti\&.
.RE
.PP
\fB\-B\fR, \fB\-\-ignore\-blank\-lines\fR
.RS4
Ignora i cambiamenti le cui righe sono tutte vuote\&.
.RE
.PP
\fB\-E\fR, \fB\-\-ignore\-end\-of\-line\fR
.RS4
Ignora le differenze alla fine della riga\&.
.RE
.PP
\fB\-i\fR, \fB\-\-ignore\-case\fR
.RS4
Ignora le differenze tra lettere maiuscole e minuscole nel contenuto del file\&.
.RE
.PP
\fB\-w\fR, \fB\-\-ignore\-all\-space\fR
.RS4
Ignora tutti gli spazi vuoti\&.
.RE
.SH"CONFRONTARE I FILE"
.PP
Usare le voci del menu
File \(-> Nuova unione a 2 file,
File \(-> Nuova unione a 3 file
e
File \(-> Nuova unione a N file
per creare ulteriori schede di confronto tra file di testo\&. I nomi dei file e le revisioni possono essere indicati sia come argomenti della linea di comando di
Diffuse
sia nei campi della finestra di apertura file\&.
.PP
Diffuse
visualizza i file uno a fianco all\*(Aqaltro inserendo degli spazi per allineare le righe di testo simili\&. Le differenze sono evidenziate con diversi colori di sfondo\&.
.SS"Sommario del confronto"
.PP
Nel margine destro della finestra è visibile un sommario del confronto dei file\&. Il sommario mostra dove sono stati inseriti degli spazi per allineare le righe di testo corrispondenti ed evidenzia le differenze usando i colori\&. Le modifiche manuali sono evidenziate in verde\&. Un cursore blu identifica la regione che si sta visualizzando\&. La regione visualizzata può essere cambiata facendo clic in un qualsiasi punto del sommario\&.
.SS"Selezionare"
.PP
Le righe di testo possono essere selezionate utilizzando il mouse o la tastiera\&. Selezionare le righe di testo facendovi clic sopra con il puntatore del mouse\&. Fare clic e trascinare il puntatore per selezionare più righe\&. Mantenendo premuto
Maiusc
quando si fa clic la selezione corrente verrà estesa\&. Selezionare le righe con la tastiera premendo i tasti
Pag_Su,
Pag_Giù
o le
frecce\&. Tenere premuto
Maiusc
mentre si usano questi tasti per estendere la selezione\&. Spostare la selezione in un file adiacente utilizzando i tasti delle frecce sinistra e destra\&.
.SS"Far corrispondere le righe"
.PP
Il puntatore del mouse o la tastiera possono essere usati per allineare manualmente le righe di testo con i file adiacenti\&. Per allineare le righe di testo usando il puntatore del mouse, selezionare una riga di testo con il pulsante sinistro del mouse, fare clic con il tasto destro del mouse su una riga di testo del file adiacente e scegliere
Allinea con la selezione\&. Per allineare le righe di testo con la tastiera, spostare la selezione con i tasti freccia, premere la barra spaziatrice per selezionare la riga corrente di testo, spostare la selezione con i tasti freccia a una riga di testo nel file adiacente e premere di nuovo la barra spaziatrice per indicare la riga di destinazione del testo\&. Premere il tasto
Esc
in qualsiasi momento per annullare l\*(Aqoperazione\&.
.PP
Usare la voce di menu
Isola
per evitare che le righe selezionate vengano fatte corrispondere a una qualsiasi riga dei file adiacenti\&.
.SS"Modificare"
.PP
Premere il tasto
Invio
o fare doppio clic nell\*(Aqarea di testo per avviare la modalità di modifica del testo\&. Il cursore cambierà e nella barra di stato verrà visualizzato il numero della colonna in cui il cursore è posizionato\&.
.PP
Nella modalità di modifica testo, il testo può essere selezionato con il puntatore del mouse facendo clic e trascinando\&. La selezione corrente può essere estesa tenendo premuto il tasto
Maiusc
e muovendo il cursore facendo clic con il puntatore del mouse o premendo uno qualsiasi tra i
tasti freccia,
home,
fine,
Pg_Su
o
Pg_Giù\&. Le parole possono essere selezionate individualmente con un doppio clic sopra di esse con il puntatore del mouse\&. L\*(Aqintera riga può essere selezionata con un triplo clic su di essa con il puntatore del mouse\&.
.PP
Modificare il testo digitando sulla tastiera\&. Le righe modificate verranno evidenziate in verde\&. Usare le voci di menu
Annulla
e
Ripeti
per annullare e ripetere le operazioni effettuate\&.
.PP
Premere il tasto
Esc
o fare clic nell\*(Aqarea di testo di un altro file con il pulsante sinistro del mouse per abbandonare la modalità di modifica del testo\&.
.SS"Unire"
.PP
Usare i pulsanti delle differenze o le relative voci del menu per spostarsi tra i blocchi di differenze all\*(Aqinterno del file\&.
Diffuse
sposterà la selezione al gruppo di righe più vicino con differenze o modifiche\&.
.PP
Usare i pulsanti di unione o le relative voci di menu per copiare blocchi di testo nelle righe selezionate\&. Le voci di menu
Annulla
e
Ripeti
possono essere utilizzate per annullare e ripetere le operazioni effettuate in precedenza\&. Tutte le modifiche a un gruppo di righe possono essere annullate utilizzando la voce di menu
Annulla modifiche
indipendentemente dall\*(Aqordine con cui le modifiche sono state effettuate\&.
.SH"CONTROLLO DI VERSIONE"
.PP
Diffuse
è in grado di recuperare le revisioni dei file da diversi sistemi di controllo di versione attraverso la loro interfaccia da linea di comando\&. Il pacchetto di
Diffuse
compilato per Microsoft Windows è in grado di utilizzare sia Cygwin che le versioni native dei sistemi di controllo di versione supportati\&. Quando si utilizza
Diffuse
con Cygwin, assicurarsi che le preferenze di
Diffuse
relative a Cygwin descrivano correttamente il proprio sistema\&. Se la preferenza
Aggiorna i percorsi per Cygwin
esiste per un sistema di controllo di versione, deve essere abilitata per utilizzare la versione di Cygwin\&.
.PP
I sistemi di controllo di versione sono sensibili al percorso di sistema e ad altre impostazioni delle variabili di sistema\&. La preferenza
Avvia dalla Bash di una shell di login
può essere usata per impostare facilmente l\*(Aqambiente per i sistemi di controllo di versione Cygwin\&.
.SS"Visualizzare le modifiche non applicate"
.PP
L\*(Aqopzione
\fB\-m\fR
farà aprire a
Diffuse
tante schede di confronto quanti sono i file con modifiche non applicate così come riportati dal sistema di controllo di versione\&. Questo è utile per controllare tutti i cambiamenti prima di effettuare il "commit" o di risolvere i conflitti di unione\&. Se non vengono specificati dei percorsi, verrà utilizzata la cartella di lavoro corrente\&. Per esempio, visualizzare tutte le proprie modifiche non applicate con il seguente comando:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse \-m\fR
.fi
.ifn\{\
.RE
.\}
.PP
La revisione predefinita di un file verrà usata per il confronto se viene specificato un solo file\&. Per esempio, il seguente comando visualizzerà un\*(Aqunione a due file tra la revisione predefinita del file
foo\&.C
e la copia locale dello stesso file:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse foo\&.C\fR
.fi
.ifn\{\
.RE
.\}
.sp
.SS"Specificare le revisioni"
.PP
L\*(Aqopzione\fB\-r\fR
può essere usata per specificare esplicitamente una particolare revisione di un file\&. Può essere utilizzato un qualsiasi identificatore della revisione riconosciuto dal sistema di controllo di versione\&. Se viene specificata un\*(Aqunica revisione, il confronto verrà fatto rispetto al file locale\&. Per esempio, il seguente comando visualizzerà una unione a 2 file tra la revisione 123 del file
foo\&.C
e la copia locale dello stesso file:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse \-r 123 foo\&.C\fR
.fi
.ifn\{\
.RE
.\}
.PP
Diverse revisioni dello stesso file possono essere confrontate specificando più opzioni
\fB\-r\fR\&. Per esempio, il seguente comando visualizzerà una unione a due file tra la revisione 123 del file
foo\&.C
e la revisione 321 dello stesso file:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse \-r 123 \-r 321 foo\&.C\fR
.fi
.ifn\{\
.RE
.\}
.PP
I file locali possono essere combinati con file dal controllo di versione\&. Per esempio, il seguente comando visualizzerà una unione a 3 file tra la revisione MERGE_HEAD del file
foo\&.C, il file locale
foo\&.C
e la revisione HEAD dello stesso file:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse \-r MERGE_HEAD foo\&.C foo\&.C \-r HEAD foo\&.C\fR
.fi
.ifn\{\
.RE
.\}
.PP
L\*(Aqopzione
\fB\-c\fR
può essere usata per specificare facilmente una coppia di revisioni con numerazioni successive\&. Per esempio, questo comando visualizzerà una unione a 2 file tra la revisione 1\&.2\&.2 del file
foo\&.C
e la revisione 1\&.2\&.3 dello stesso file:
.PP
.ifn\{\
.RS4
.\}
.nf
$ \fBdiffuse \-c 1\&.2\&.3 foo\&.C\fR
.fi
.ifn\{\
.RE
.\}
.PP
Diffuse
non limita il numero di riquadri che possono essere usati per confrontare i file\&. Gli input a una unione Git a più direzioni possono essere visualizzati con un comando di questo tipo:
Le risorse possono essere utilizzate per personalizzare vari parametri dell\*(Aqaspetto e del comportamento di
Diffuse\&. È possibile infatti modificare i colori utilizzati nell\*(Aqinterfaccia, personalizzare le scorciatoie da tastiera, aggiungere o sostituire regole per il riconoscimento della sintassi o modificare la mappatura tra estensione del file e regole di riconoscimento della sintassi\&.
.PP
Quando
Diffuse
viene avviato, legge i comandi dal file di inizializzazione del sistema
/etc/diffuserc
(%CARTELLA_DI_INSTALLAZIONE%\ediffuserc
su Microsoft Windows) e in seguito il file di inizializzazione personale
~/\&.config/diffuse/diffuserc
(%HOME%\e\&.config\ediffuse\ediffuserc
su Microsoft Windows)\&. Questo comportamento può essere modificato con le opzioni di configurazione
\fB\-\-no\-rcfile\fR
e
\fB\-\-rcfile\fR\&. Un analizzatore di lessico simile alla Bourne shell è utilizzato per analizzare i comandi di inizializzazione\&. I commenti e i caratteri speciali possono essere inseriti utilizzando lo stesso stile di "escaping" utilizzato per gli script della Bourne shell\&.
.SS"Generali"
.PP
\fBimport \fR\fB\fIfile\fR\fR
.RS4
Elabora i comandi di inizializzazione dal file
\fIfile\fR\&. Il file di inizializzazione viene elaborato una sola volta\&.
\fInome\fR\&. Il riconoscimento della sintassi utilizza una semplice macchina di stato che cambia di stato nel momento in cui alcuni schemi risultano corrispondenti\&. Lo stato iniziale per la macchina sarà
\fIstato_iniziale\fR\&. Tutti i caratteri che non corrispondono ad alcuno schema verranno marcati come
\fIdefault_tag\fR
per il riconoscimento\&. Lo stile di sintassi chiamato
Aggiunge uno schema allo stile di sintassi dichiarato precedentemente\&.Gli schemi sono analizzati uno alla volta nell\*(Aqordine dichiarato fino a quando non viene trovata una corrispondenza\&. Uno schema sarà utilizzato per far corrispondere dei caratteri solamente se la macchina di stato si trova nello stato
\fIstato_iniziale\fR\&. La macchina di stato si sposterà sullo
\fIstato_finale\fR
se lo schema definito da
\fIschema\fR
verrà corrisposto\&. La corrispondenza dello schema ignorerà le differenze tra maiuscole e minuscole se è specificata l\*(Aqopzione
\fBignorecase\fR\&. Tutti i caratteri per cui è stata trovata una corrispondenza verranno identificati con
\fItag\fR
per evidenziarli\&.
.RE
.SH"FILE"
.PP
Diffuse
utilizza i seguenti file:
.PP
/etc/diffuserc
.RS4
Inizializzazioni a livello di tutto il sistema (%CARTELLA_DI_INSTALLAZIONE%\ediffuserc
su Microsoft Windows)
.RE
.PP
/usr/share/diffuse/syntax/*\&.syntax
.RS4
File di sintassi per i vari linguaggi (%CARTELLA_DI_INSTALLAZIONE%\esyntax\e*\&.syntax
su Microsoft Windows)
.RE
.PP
~/\&.config/diffuse/diffuserc
.RS4
Le proprie inizializzazioni (%HOME%\e\&.config\ediffuse\ediffuserc
su Microsoft Windows)
.RE
.PP
~/\&.config/diffuse/prefs
.RS4
Le proprie preferenze salvate (%HOME%\e\&.config\ediffuse\eprefs
su Microsoft Windows)
.RE
.PP
~/\&.local/share/diffuse/state
.RS4
dati persistenti tra le sessioni (%HOME%\e\&.local\eshare\ediffuse\estate
su Microsoft Windows)
.RE
.SH"AUTORE"
.PP
Diffuse
è stato scritto da Derrick Moser
<derrick_moser@yahoo\&.com>\&.
.PP
\(co 2006\-2014 Derrick Moser\&. Tutti i diritti riservati\&.
.SH"COPIA"
.PP
Diffuse
è software libero; è possibile ridistribuirlo e modificarlo nel rispetto dei termini della
GNU General Public License
come pubblicata dalla Free Software Foundation sia essa nella versione 2 o (a propria scelta) qualsiasi versione successiva\&.