SINOSSI
-
diffuse [-h | -? | --help | -v | --version]
- diffuse [--no-rcfile | --rcfile file] [[option...] | [file...]...]
DESCRIZIONE
OPZIONI
Opzioni di aiuto
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
- Mostra le informazioni di utilizzo.
-v, --version
- Mostra la versione e il copyright.
Opzioni di configurazione
Se viene specificata una opzione di configurazione, questa deve essere il primo argomento indicato nella riga di comando.
--no-rcfile
- Non legge alcun file di inizializzazione.
--rcfile file
- Legge i comandi di inizializzazione esclusivamente dal file file.
Opzioni generali
-c, --commit rev
- Apre delle schede di confronto separate per tutti i file interessati dal commit rev dai restanti percorsi indicati tra gli argomenti della linea di comando.
-D, --close-if-same
- Chiude tutte le schede senza differenze.
-e, --encoding codec
- Usa codec per leggere e scrivere i file.
-L, --label etichetta
- Visualizza etichetta invece del nome del file.
-m, --modified
- Apre delle schede di confronto separate per tutti gli elementi modificati dai restanti percorsi indicati tra gli argomenti della linea di comando.
-r, --revision rev
- Include nella scheda di confronto dei file la revisione rev del file successivo contenuto negli argomenti della linea di comando.
-s, --separate
- Apre tutti i restanti file specificati come argomento della linea di comando in schede di confronto separate.
-t, --tab
- Apre una nuova scheda per ogni altro file indicato come argomento della riga di comando.
--line linea
- Inizia con la linea selezionata.
--null-file
- Crea un riquadro di confronto vuoto.
Opzioni di visualizzazione
Le opzioni di visualizzazione indicate come argomenti della linea di comando hanno la precedenza sui valori salvati delle preferenze.
-b, --ignore-space-change
- Ignora i cambiamenti del numero di spazi vuoti.
-B, --ignore-blank-lines
- Ignora i cambiamenti le cui righe sono tutte vuote.
-E, --ignore-end-of-line
- Ignora le differenze alla fine della riga.
-i, --ignore-case
- Ignora le differenze tra lettere maiuscole e minuscole nel contenuto del file.
-w, --ignore-all-space
- Ignora tutti gli spazi vuoti.
CONFRONTARE I FILE
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.
Sommario del confronto
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.
Selezionare
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.
Far corrispondere le righe
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.
Modificare
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.
Unire
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.
CONTROLLO DI VERSIONE
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.
Visualizzare le modifiche non applicate
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
Specificare le revisioni
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
RISORSE
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.
Generali
import file
- Elabora i comandi di inizializzazione dal file file. Il file di inizializzazione viene elaborato una sola volta.
Keybinding
keybinding contesto azione combinazione_tasti
- Collega una combinazione di tasti a azione quando è utilizzata in contesto. Specificare i modificatori Maiusc e Control precedendo rispettivamente Maiusc+ e Ctrl+ a combinazione_tasti. I tasti normalmente modificati da Maiusc dovrebbero essere specificati utilizzando il loro valore modificato se combinazione_tasti comprende il tasto Maiusc; per esempio Ctrl+g e Maiusc+Ctrl+G. Rimuovere i collegamenti per combinazione_tasti specificando None come azione.
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
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
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
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
Keybinding delle voci di menu
Stringhe
stringa nome valore
- Dichiara una stringa chiamata nome con valore valore.
Diffuse
utilizza le seguenti stringhe come risorse:
difference_colours
Predefinito:
difference_1 difference_2 difference_3
Risorse stringa utilizzate
Colori
[ colour | color ] nome rosso verde blu
- Dichiara una risorsa colore chiamata nome. Le singole componenti del colore devono essere espresse come valori compresi tra 0 e 1.
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
Risorse colori utilizzati
Valori a virgola mobile
float nome valore
- Dichiara una risorsa a virgola mobile chiamata nome con valore valore.
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_alpha
Predefinito:
0.3
line_selection_opacity
Predefinito:
0.4
Risorse a virgola mobile utilizzate
Riconoscimento della sintassi
syntax nome [stato_iniziale default_tag]
- Dichiara un nuovo stile di sintassi chiamato nome. 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à stato_iniziale. Tutti i caratteri che non corrispondono ad alcuno schema verranno marcati come default_tag per il riconoscimento. Lo stile di sintassi chiamato nome può essere rimosso omettendo stato_iniziale e default_tag.
syntax_files nome [schema]
- Specifica che i file con un nome corrispondente a schema devono essere evidenziati utilizzando lo stile di sintassi chiamato nome. Gli schemi usati per far corrispondere i file utilizzati con lo stile di sintassi chiamato nome possono essere rimossi omettendo schema.
syntax_magic nome [schema [ignorecase]]
- Specifica che i file con una prima riga corrispondente a schema devono essere evidenziati utilizzando lo stile di sintassi chiamato nome. Gli schemi usati per far corrispondere i file utilizzati con lo stile di sintassi chiamato nome possono essere rimossi omettendo schema.
syntax_pattern nome stato_iniziale stato_finale tag schema [ignorecase]
- Aggiunge uno schema allo stile di sintassi dichiarato precedentemente.Gli schemi sono analizzati uno alla volta nell'ordine 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 stato_iniziale. La macchina di stato si sposterà sullo stato_finale se lo schema definito da schema verrà corrisposto. La corrispondenza dello schema ignorerà le differenze tra maiuscole e minuscole se è specificata l'opzione ignorecase. Tutti i caratteri per cui è stata trovata una corrispondenza verranno identificati con tag per evidenziarli.
FILE
Diffuse utilizza i seguenti file:
/etc/diffuserc
- Inizializzazioni a livello di tutto il sistema (%CARTELLA_DI_INSTALLAZIONE%\diffuserc su Microsoft Windows)
/usr/share/diffuse/syntax/*.syntax
- File di sintassi per i vari linguaggi (%CARTELLA_DI_INSTALLAZIONE%\syntax\*.syntax su Microsoft Windows)
~/.config/diffuse/diffuserc
- Le proprie inizializzazioni (%HOME%\.config\diffuse\diffuserc su Microsoft Windows)
~/.config/diffuse/prefs
- Le proprie preferenze salvate (%HOME%\.config\diffuse\prefs su Microsoft Windows)
~/.local/share/diffuse/state
- dati persistenti tra le sessioni (%HOME%\.local\share\diffuse\state su Microsoft Windows)
AUTORE
Diffuse è stato scritto da Derrick Moser <[email protected]>.
© 2006-2014 Derrick Moser. Tutti i diritti riservati.
COPIA
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.