DIFFUSE(1) | Manuale di Diffuse | DIFFUSE(1) |
diffuse - strumento grafico per l'unione e il confronto di file
diffuse [-h | -? | --help | -v | --version]
diffuse [--no-rcfile | --rcfile file] [[option...] | [file...]...]
Diffuse è uno strumento grafico per l'unione e il confronto di file di testo. Diffuse è in grado di confrontare uno a fianco all'altro un qualsiasi numero di file e fornisce all'utente la possibilità di correggere manualmente la corrispondenza fra le righe e di modificare i file. Diffuse è anche in grado di recuperare le revisioni dei file dai repository Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion e SVK per confrontarle e unirle.
Se viene specificata una opzione di aiuto, questa deve essere l'unico argomento inserito nella linea di comando. Diffuse uscirà subito dopo aver visualizzato le informazioni.
-h, -?, --help
-v, --version
Se viene specificata una opzione di configurazione, questa deve essere il primo argomento indicato nella riga di comando.
--no-rcfile
--rcfile file
-c, --commit rev
-D, --close-if-same
-e, --encoding codec
-L, --label etichetta
-m, --modified
-r, --revision rev
-s, --separate
-t, --tab
--line linea
--null-file
Le opzioni di visualizzazione indicate come argomenti della linea di comando hanno la precedenza sui valori salvati delle preferenze.
-b, --ignore-space-change
-B, --ignore-blank-lines
-E, --ignore-end-of-line
-i, --ignore-case
-w, --ignore-all-space
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.
Diffuse visualizza i file uno a fianco all'altro inserendo degli spazi per allineare le righe di testo simili. Le differenze sono evidenziate con diversi colori di sfondo.
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.
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.
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'operazione.
Usare la voce di menu Isola per evitare che le righe selezionate vengano fatte corrispondere a una qualsiasi riga dei file adiacenti.
Premere il tasto Invio o fare doppio clic nell'area 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.
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'intera riga può essere selezionata con un triplo clic su di essa con il puntatore del mouse.
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.
Premere il tasto Esc o fare clic nell'area di testo di un altro file con il pulsante sinistro del mouse per abbandonare la modalità di modifica del testo.
Usare i pulsanti delle differenze o le relative voci del menu per spostarsi tra i blocchi di differenze all'interno del file. Diffuse sposterà la selezione al gruppo di righe più vicino con differenze o modifiche.
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'ordine con cui le modifiche sono state effettuate.
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.
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'ambiente per i sistemi di controllo di versione Cygwin.
L'opzione -m 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:
$ diffuse -m
La revisione predefinita di un file verrà usata per il confronto se viene specificato un solo file. Per esempio, il seguente comando visualizzerà un'unione a due file tra la revisione predefinita del file foo.C e la copia locale dello stesso file:
$ diffuse foo.C
L'opzione-r 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'unica 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:
$ diffuse -r 123 foo.C
Diverse revisioni dello stesso file possono essere confrontate specificando più opzioni -r. 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:
$ diffuse -r 123 -r 321 foo.C
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:
$ diffuse -r MERGE_HEAD foo.C foo.C -r HEAD foo.C
L'opzione -c 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:
$ diffuse -c 1.2.3 foo.C
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:
$ diffuse -r HEAD^1 -r HEAD^2 -r HEAD^3 -r HEAD^4 -r HEAD^5 foo.C
Le risorse possono essere utilizzate per personalizzare vari parametri dell'aspetto e del comportamento di Diffuse. È possibile infatti modificare i colori utilizzati nell'interfaccia, 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.
Quando Diffuse viene avviato, legge i comandi dal file di inizializzazione del sistema /etc/diffuserc (%CARTELLA_DI_INSTALLAZIONE%\diffuserc su Microsoft Windows) e in seguito il file di inizializzazione personale ~/.config/diffuse/diffuserc (%HOME%\.config\diffuse\diffuserc su Microsoft Windows). Questo comportamento può essere modificato con le opzioni di configurazione --no-rcfile e --rcfile. 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.
import file
keybinding contesto azione combinazione_tasti
Keybinding delle voci di menu
Usare menu come contesto per definire i keybinding per le voci dei menu. I seguenti valori sono validi per il campo azione:
open_file
Predefinito: Ctrl+o
open_file_in_new_tab
Predefinito: Ctrl+t
open_modified_files
Predefinito: Shift+Ctrl+O
open_commit
Predefinito: Shift+Ctrl+T
reload_file
Predefinito: Shift+Ctrl+R
save_file
Predefinito: Ctrl+s
save_file_as
Predefinito: Shift+Ctrl+A
save_all
Predefinito: Shift+Ctrl+S
new_2_way_file_merge
Predefinito: Ctrl+2
new_3_way_file_merge
Predefinito: Ctrl+3
new_n_way_file_merge
Predefinito: Ctrl+4
close_tab
Predefinito: Ctrl+w
undo_close_tab
Predefinito: Shift+Ctrl+w
quit
Predefinito: Ctrl+q
undo
Predefinito: Ctrl+z
redo
Predefinito: Shift+Ctrl+Z
cut
Predefinito: Ctrl+x
copy
Predefinito: Ctrl+c
paste
Predefinito: Ctrl+v
select_all
Predefinito: Ctrl+a
clear_edits
Predefinito: Ctrl+r
dismiss_all_edits
Predefinito: Ctrl+d
find
Predefinito: Ctrl+f
find_next
Predefinito: Ctrl+g
find_previous
Predefinito: Shift+Ctrl+G
go_to_line
Predefinito: Shift+Ctrl+L
preferences
Predefinito: Nessuno
no_syntax_highlighting
Predefinito: Nessuno
syntax_highlighting_sintassi
Predefinito: Nessuno
realign_all
Predefinito: Ctrl+l
isolate
Predefinito: Ctrl+i
first_difference
Predefinito: Shift+Ctrl+Up
previous_difference
Predefinito: Ctrl+Up
next_difference
Predefinito: Ctrl+Down
last_difference
Predefinito: Shift+Ctrl+Down
first_tab
Predefinito: Shift+Ctrl+Page_Up
previous_tab
Predefinito: Ctrl+Page_Up
next_tab
Predefinito: Ctrl+Page_Down
last_tab
Predefinito: Shift+Ctrl+Page_Down
shift_pane_right
Predefinito: Shift+Ctrl+parenleft
shift_pane_left
Predefinito: Shift+Ctrl+parenright
convert_to_upper_case
Predefinito: Ctrl+u
convert_to_lower_case
Predefinito: Shift+Ctrl+U
sort_lines_in_ascending_order
Predefinito: Ctrl+y
sort_lines_in_descending_order
Predefinito: Shift+Ctrl+Y
remove_trailing_white_space
Predefinito: Ctrl+k
convert_tabs_to_spaces
Predefinito: Ctrl+b
convert_leading_spaces_to_tabs
Predefinito: Shift+Ctrl+B
increase_indenting
Predefinito: Shift+Ctrl+greater
decrease_indenting
Predefinito: Shift+Ctrl+less
convert_to_dos
Predefinito: Shift+Ctrl+E
convert_to_mac
Predefinito: Shift+Ctrl+C
convert_to_unix
Predefinito: Ctrl+e
copy_selection_right
Predefinito: Shift+Ctrl+Right
copy_selection_left
Predefinito: Shift+Ctrl+Left
copy_left_into_selection
Predefinito: Ctrl+Destra
copy_right_into_selection
Predefinito: Ctrl+Sinistra
merge_from_left_then_right
Predefinito: Ctrl+m
merge_from_right_then_left
Predefinito: Shift+Ctrl+M
help_contents
Predefinito: F1
about
Predefinito: Nessuno
Keybinding per la modalità di modifica delle righe
Usare line_mode come contesto per definire i keybinding per la modalità di modifica delle righe. I seguenti valori sono validi per il campo azione:
enter_align_mode
Predefinito: space
enter_character_mode
Predefiniti: Return, KP_Enter
first_line
Predefiniti: Home, g
extend_first_line
Predefinito: Shift+Home
last_line
Predefiniti: End, Shift+G
extend_last_line
Predefinito: Shift+End
up
Predefiniti: Up, k
extend_up
Predefiniti: Shift+Up, Shift+K
down
Predefiniti: Down, j
extend_down
Predefiniti: Shift+Down, Shift+J
left
Predefiniti: Left, h
extend_left
Predefinito: Shift+Left
right
Predefiniti: Right, l
extend_right
Predefinito: Shift+Right
page_up
Predefiniti: Page_Up, Ctrl+u
extend_page_up
Predefiniti: Shift+Page_Up, Shift+Ctrl+u
page_down
Predefiniti: Page_Down, Ctrl+d
extend_page_down
Predefiniti: Shift+Page_Down, Shift+Ctrl+d
delete_text
Predefiniti: BackSpace, Delete, x
first_difference
Predefiniti: Ctrl+Home, Shift+P
previous_difference
Predefinito: p
next_difference
Predefinito: n
last_difference
Predefiniti: Ctrl+End, Shift+N
clear_edits
Predefinito: r
copy_selection_left
Predefinito: Nessuno
copy_selection_right
Predefinito: Nessuno
copy_left_into_selection
Predefinito: Shift+L
copy_right_into_selection
Predefinito: Shift+H
merge_from_left_then_right
Predefinito: m
merge_from_right_then_left
Predefinito: Shift+M
isolate
Predefinito: i
Keybinding per la modalità di modifica
dell'allineamento
Usare align_mode come contesto per definire i keybinding per la modalità di modifica dell'allineamento. I seguenti valori sono validi per il campo azione:
enter_line_mode
Predefinito: Escape
enter_character_mode
Predefiniti: Return, KP_Enter
first_line
Predefinito: g
last_line
Predefinito: Shift+G
up
Predefiniti: Up, k
down
Predefiniti: Down, j
left
Predefiniti: Left, h
right
Predefiniti: Right, l
page_up
Predefiniti: Page_Up, Ctrl+u
page_down
Predefiniti: Page_Down, Ctrl+d
align
Predefinito: space
Keybinding della modalità di modifica testo
Usare character_mode come contesto per definire i keybinding per la modalità di modifica testo. I seguenti valori sono validi per il campo azione:
enter_line_mode
Predefinito: Escape
stringa nome valore
Risorse stringa utilizzate
Diffuse utilizza le seguenti stringhe come risorse:
difference_colours
Predefinito: difference_1 difference_2 difference_3
[ colour | color ] nome rosso verde blu
Risorse colori utilizzati
Diffuse utilizza le seguenti risorse colore:
alignment
Predefinito: 1 1 0
character_selection
Predefinito: 0.7 0.7 1
cursor
Predefinito: 0 0 0
difference_1
Predefinito: 1 0.625 0.625
difference_2
Predefinito: 0.85 0.625 0.775
difference_3
Predefinito: 0.85 0.775 0.625
edited
Predefinito: 0.5 1 0.5
hatch
Predefinito: 0.8 0.8 0.8
line_number
Predefinito: 0 0 0
line_number_background
Predefinito: 0.75 0.75 0.75
line_selection
Predefinito: 0.7 0.7 1
map_background
Predefinito: 0.6 0.6 0.6
margin
Predefinito: 0.8 0.8 0.8
preedit
Predefinito: 0 0 0
text
Predefinito: 0 0 0
text_background
Predefinito: 1 1 1
float nome valore
Risorse a virgola mobile utilizzate
Diffuse utilizza le seguenti risorse a virgola mobile:
alignment_opacity
Predefinito: 1
character_difference_opacity
Predefinito: 0.4
character_selection_opacity
Predefinito: 0.4
edited_opacity
Predefinito: 0.4
line_difference_opacity
Predefinito: 0.3
line_selection_opacity
Predefinito: 0.4
syntax nome [stato_iniziale default_tag]
syntax_files nome [schema]
syntax_magic nome [schema [ignorecase]]
syntax_pattern nome stato_iniziale stato_finale tag schema [ignorecase]
Diffuse utilizza i seguenti file:
/etc/diffuserc
/usr/share/diffuse/syntax/*.syntax
~/.config/diffuse/diffuserc
~/.config/diffuse/prefs
~/.local/share/diffuse/state
Diffuse è stato scritto da Derrick Moser <derrick_moser@yahoo.com>.
© 2006-2014 Derrick Moser. Tutti i diritti riservati.
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.
2014-07-18 | diffuse 0.4.8 |