EnglishFrenchSpanish

Ad


OnWorks favicon

diffuse - Online in the Cloud

Run diffuse in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command diffuse that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


diffuse - graphical tool for merging and comparing text files

SYNOPSIS


diffuse [-h | -? | --help | -v | --version]

diffuse [--no-rcfile | --rcfile file] [[option...] | [file...]...]

DESCRIPTION


Diffuse is a graphical tool for merging and comparing text files. Diffuse is able to
compare an arbitrary number of files side-by-side and gives users the ability to manually
adjust line matching and directly edit files. Diffuse can also retrieve revisions of
files from Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion, and SVK
repositories for comparison and merging.

OPTIONS


Help Options
If a help option is specified, it must be the only argument specified on the command line.
Diffuse will immediately quit after displaying the help information.

-h, -?, --help
Display usage information.

-v, --version
Display version number and copyright information.

Configuration Options
If a configuration option is specified, it must be the first argument specified on the
command line.

--no-rcfile
Do not read any initialisation files.

--rcfile file
Only read initialisation commands from file file.

General Options
-c, --commit rev
Open separate file comparison tabs for all files affected by commit rev from the
remaining paths specified in the command line arguments.

-D, --close-if-same
Close all tabs with no differences.

-e, --encoding codec
Use codec to read and write files.

-L, --label label
Display label instead of the file name.

-m, --modified
Open separate file comparison tabs for all modified files from the remaining paths
specified in the command line arguments.

-r, --revision rev
Include revision rev of the next file named in the command line arguments in a file
comparison tab.

-s, --separate
Open all remaining files specified in the command line arguments in separate file
comparison tabs.

-t, --tab
Start a new tab for any remaining files named in the command line arguments.

--line line
Start with line line selected.

--null-file
Create a blank file comparison pane.

Display Options
Display options specified in the command line arguments will override saved preference
values.

-b, --ignore-space-change
Ignore changes to the amount of white space.

-B, --ignore-blank-lines
Ignore changes whose lines are all blank.

-E, --ignore-end-of-line
Ignore end of line differences.

-i, --ignore-case
Ignore case differences in file contents.

-w, --ignore-all-space
Ignore all white space.

FILE COMPARISON


Use the File → New 2-Way File Merge, File → New 3-Way File Merge, and File → New N-Way
File Merge menu items to create additional tabs for comparing text files. File names and
revisions can be specified either in the command line arguments used to invoke Diffuse or
in fields on the Open File dialogue.

Diffuse displays files side-by-side inserting gaps to align similar lines of text.
Differences are highlighted with a different background colour.

Comparison Summary
A summary of the compared files is located in the far right margin. The summary
illustrates where gaps have been inserted to align matching lines of text and highlights
differences using colour. Manual edits are also highlighted in green. A blue cursor
identifies the region currently being viewed. The viewed region can be changed by clicking
anywhere on the summary.

Selecting
Lines of text can be selected using the mouse pointer or keyboard. Select lines of text
with the mouse pointer by clicking on a line. Click and drag to select multiple lines.
Holding down the shift key when clicking will extend the current selection. Select lines
using the keyboard by pressing the page up/down or arrow keys. Extend the current
selection by holding down the shift key and pressing the page up/down or arrow keys. Move
the selection to an adjacent file using the left and right arrow keys.

Matching Lines
The mouse pointer or keyboard can be used to manually align lines of text with adjacent
files. To aligning lines of text using the mouse pointer, select a line of text with the
left mouse button, right click on a line of text from an adjacent file, and choose Align
with Selection. To align lines of text using the keyboard, move the selection with the
cursor keys, press the space bar to pick the current line of text, move the selection with
the cursor keys to a line of text in an adjacent file, and press the space bar to pick the
target line of text. Pressing the Escape key will cancel the operation.

Use the Isolate menu item to prevent the selected lines from being matched with any lines
from the adjacent files.

Editing
Press the Enter key or double-click on a text area to enter text editing mode. The cursor
will change to indicate text editing mode and the status bar at the bottom of the window
will display the cursor's column position.

In text editing mode, text can be selected with the mouse pointer by click and dragging.
The current selection can be extended by holding down the shift key and moving the cursor
by clicking with the mouse pointer or pressing any of the arrow, home, end or page up/down
keys. Individual words can be selected by double-clicking on them with the mouse pointer.
Whole lines can be selected by triple-clicking on them with the mouse pointer.

Modify text by typing on the keyword. Modified lines will be highlighted in green. Use the
Undo and Redo menu items to undo and redo the previously preformed operations.

Press the Escape key or click on another file's text area using the left mouse button to
leave editing mode.

Merging
Use the difference buttons or menu items to navigate between blocks of differences within
a file. When navigating, Diffuse will move the selection to the next continuous set of
lines with differences or edits.

Use the merge buttons or menu items to copy blocks of text into the selected range of
lines. The Undo and Redo menu items can be used to undo and redo the previously preformed
operations. All changes to a set of lines can be reverted using the Clear Edits menu item
regardless of the order the edits were performed.

VERSION CONTROL


Diffuse can retrieve file revisions from several version control systems via their command
line interface. The Microsoft Windows build of Diffuse is able to use both the Cygwin and
native versions of the supported version control systems. When using Diffuse with Cygwin,
ensure Diffuse's Cygwin preferences correctly describe your system. If the Update paths
for Cygwin preference exists for a version control system, it must be enabled to use the
Cygwin version.

Version control systems are sensitive to the system path and other environment variable
settings. The Launch from a Bash login shell preference may be used to easily set the
environment for Cygwin version control systems.

Viewing Uncommitted Modifications
The -m option will cause Diffuse to open comparison tabs for each file the version control
system indicates has uncommitted modifications. This is convenient for reviewing all
changes before committing or resolving a merge conflict. If no paths are specified the
current working directory will be used. For example, view all of your uncommitted
modifications with this command line:

$ diffuse -m

The default revision of a file will be used for comparison if only one file is specified.
For example, this will display a 2-way merge between the default revision of foo.C and the
local foo.C file:

$ diffuse foo.C

Specifying Revisions
The -r option may also be used to explicitly specify a particular file revision. Any
revision specifier understood by the version control system may be used. The local file
will be used for comparison if only one file revision is specified. For example, this will
display a 2-way merge between revision 123 of foo.C and the local foo.C file:

$ diffuse -r 123 foo.C

Multiple file revisions can be compared by specifying multiple -r options. For example,
this will display a 2-way merge between revision 123 of foo.C and revision 321 of foo.C:

$ diffuse -r 123 -r 321 foo.C

Local files can be mixed with files from the version control system. For example, this
will display a 3-way merge between revision MERGE_HEAD of foo.C, the local foo.C file, and
revision HEAD of foo.C:

$ diffuse -r MERGE_HEAD foo.C foo.C -r HEAD foo.C

For the -c option may be used to easily specify a pair of sequential revisions. For
example, this will display a 2-way merge between revision 1.2.2 of foo.C and revision
1.2.3 of foo.C:

$ diffuse -c 1.2.3 foo.C

Diffuse does not limit the number of panes that can be used for comparing files. The
inputs to a Git octopus merge could be viewed with a command line like this:

$ diffuse -r HEAD^1 -r HEAD^2 -r HEAD^3 -r HEAD^4 -r HEAD^5 foo.C

RESOURCES


Resources can be used to customise several aspects of Diffuse's appearance and behaviour
such as changing the colours used in the user interface, customising the keyboard
shortcuts, adding or replacing syntax highlighting rules, or changing the mapping from
file extensions to syntax highlighting rules.

When Diffuse is started, it will read commands from the system wide initialisation file
/etc/diffuserc (%INSTALL_DIR%\diffuserc on Microsoft Windows) and then the personal
initialisation file ~/.config/diffuse/diffuserc (%HOME%\.config\diffuse\diffuserc on
Microsoft Windows). This behaviour can be changed with the --no-rcfile and --rcfile
configuration options. A Bourne shell-like lexical analyser is used to parse
initialisation commands. Comments and special characters can be embedded using the same
style of escaping used in Bourne shell scripts.

General
import file
Processes initialisation commands from file. Initialisation files will only be
processed once.

Key Bindings
keybinding context action key_combination
Binds a key combination to action when used in context. Specify Shift and Control
modifiers by prepending Shift+ and Ctrl+ to key_combination respectively. Keys
normally modified by the Shift key should be specified using their modified value if
key_combination involves the Shift key. For example, Ctrl+g and Shift+Ctrl+G. Remove
bindings for key_combination by specifying None for the action.

Menu Item Key Bindings
Use menu for the context to define key bindings for menu items. The following values
are valid for action:

open_file
File → Open File... menu item

Default: Ctrl+o

open_file_in_new_tab
File → Open File In New Tab... menu item

Default: Ctrl+t

open_modified_files
File → Open Modified Files... menu item

Default: Shift+Ctrl+O

open_commit
File → Open Commit... menu item

Default: Shift+Ctrl+T

reload_file
File → Reload File menu item

Default: Shift+Ctrl+R

save_file
File → Save File menu item

Default: Ctrl+s

save_file_as
File → Save File As... menu item

Default: Shift+Ctrl+A

save_all
File → Save All menu item

Default: Shift+Ctrl+S

new_2_way_file_merge
File → New 2-Way File Merge menu item

Default: Ctrl+2

new_3_way_file_merge
File → New 3-Way File Merge menu item

Default: Ctrl+3

new_n_way_file_merge
File → New N-Way File Merge menu item

Default: Ctrl+4

close_tab
File → Close Tab menu item

Default: Ctrl+w

undo_close_tab
File → Undo Close Tab menu item

Default: Shift+Ctrl+w

quit
File → Quit menu item

Default: Ctrl+q

undo
Edit → Undo menu item

Default: Ctrl+z

redo
Edit → Redo menu item

Default: Shift+Ctrl+Z

cut
Edit → Cut menu item

Default: Ctrl+x

copy
Edit → Copy menu item

Default: Ctrl+c

paste
Edit → Paste menu item

Default: Ctrl+v

select_all
Edit → Select All menu item

Default: Ctrl+a

clear_edits
Edit → Clear Edits menu item

Default: Ctrl+r

dismiss_all_edits
Edit → Dismiss All Edits menu item

Default: Ctrl+d

find
Edit → Find... menu item

Default: Ctrl+f

find_next
Edit → Find Next menu item

Default: Ctrl+g

find_previous
Edit → Find Previous menu item

Default: Shift+Ctrl+G

go_to_line
Edit → Go To Line... menu item

Default: Shift+Ctrl+L

preferences
Edit → Preferences menu item

Default: None

no_syntax_highlighting
View → Syntax Highlighting → None menu item

Default: None

syntax_highlighting_syntax
View → Syntax Highlighting → syntax menu item

Default: None

realign_all
View → Realign All menu item

Default: Ctrl+l

isolate
View → Isolate menu item

Default: Ctrl+i

first_difference
View → First Difference menu item

Default: Shift+Ctrl+Up

previous_difference
View → Previous Difference menu item

Default: Ctrl+Up

next_difference
View → Next Difference menu item

Default: Ctrl+Down

last_difference
View → Last Difference menu item

Default: Shift+Ctrl+Down

first_tab
View → First Tab menu item

Default: Shift+Ctrl+Page_Up

previous_tab
View → Previous Tab menu item

Default: Ctrl+Page_Up

next_tab
View → Next Tab menu item

Default: Ctrl+Page_Down

last_tab
View → Last Tab menu item

Default: Shift+Ctrl+Page_Down

shift_pane_right
View → Shift Pane Right menu item

Default: Shift+Ctrl+parenleft

shift_pane_left
View → Shift Pane Left menu item

Default: Shift+Ctrl+parenright

convert_to_upper_case
Format → Convert To Upper Case menu item

Default: Ctrl+u

convert_to_lower_case
Format → Convert To Lower Case menu item

Default: Shift+Ctrl+U

sort_lines_in_ascending_order
Format → Sort Lines In Ascending Order menu item

Default: Ctrl+y

sort_lines_in_descending_order
Format → Sort Lines In Descending Order menu item

Default: Shift+Ctrl+Y

remove_trailing_white_space
Format → Remove Trailing White Space menu item

Default: Ctrl+k

convert_tabs_to_spaces
Format → Convert Tabs To Spaces menu item

Default: Ctrl+b

convert_leading_spaces_to_tabs
Format → Convert Leading Spaces To Tabs menu item

Default: Shift+Ctrl+B

increase_indenting
Format → Increase Indenting menu item

Default: Shift+Ctrl+greater

decrease_indenting
Format → Decrease Indenting menu item

Default: Shift+Ctrl+less

convert_to_dos
Format → Convert To DOS Format menu item

Default: Shift+Ctrl+E

convert_to_mac
Format → Convert To Mac Format menu item

Default: Shift+Ctrl+C

convert_to_unix
Format → Convert To Unix Format menu item

Default: Ctrl+e

copy_selection_right
Merge → Copy Selection Right menu item

Default: Shift+Ctrl+Right

copy_selection_left
Merge → Copy Selection Left menu item

Default: Shift+Ctrl+Left

copy_left_into_selection
Merge → Copy Left Into Selection menu item

Default: Ctrl+Right

copy_right_into_selection
Merge → Copy Right Into Selection menu item

Default: Ctrl+Left

merge_from_left_then_right
Merge → Merge From Left Then Right menu item

Default: Ctrl+m

merge_from_right_then_left
Merge → Merge From Right Then Left menu item

Default: Shift+Ctrl+M

help_contents
Help → Help Contents menu item

Default: F1

about
Help → About menu item

Default: None

Line Editing Mode Key Bindings
Use line_mode for the context to define key bindings for line editing mode. The
following values are valid for action:

enter_align_mode
enter alignment editing mode

Default: space

enter_character_mode
enter character editing mode

Defaults: Return, KP_Enter

first_line
move cursor to the first line

Defaults: Home, g

extend_first_line
move cursor to the first line, extending the selection

Default: Shift+Home

last_line
move cursor to the last line

Defaults: End, Shift+G

extend_last_line
move cursor to the last line, extending the selection

Default: Shift+End

up
move cursor up one line

Defaults: Up, k

extend_up
move cursor up one line, extending the selection

Defaults: Shift+Up, Shift+K

down
move cursor down one line

Defaults: Down, j

extend_down
move cursor down one line, extending the selection

Defaults: Shift+Down, Shift+J

left
move cursor left one file

Defaults: Left, h

extend_left
move cursor left one file, extending the selection

Default: Shift+Left

right
move cursor right one file

Defaults: Right, l

extend_right
move cursor right one file, extending the selection

Default: Shift+Right

page_up
move cursor up one page

Defaults: Page_Up, Ctrl+u

extend_page_up
move cursor up one page, extending the selection

Defaults: Shift+Page_Up, Shift+Ctrl+u

page_down
move cursor down one page

Defaults: Page_Down, Ctrl+d

extend_page_down
move cursor down one page, extending the selection

Defaults: Shift+Page_Down, Shift+Ctrl+d

delete_text
delete the selected text

Defaults: BackSpace, Delete, x

first_difference
select the first difference

Defaults: Ctrl+Home, Shift+P

previous_difference
select the previous difference

Default: p

next_difference
select the next difference

Default: n

last_difference
select the last difference

Defaults: Ctrl+End, Shift+N

clear_edits
clear all edits from the selected lines

Default: r

copy_selection_left
copy lines from the selection into the file on the left

Default: None

copy_selection_right
copy lines from the selection into the file on the right

Default: None

copy_left_into_selection
copy lines from the file on the left into the selection

Default: Shift+L

copy_right_into_selection
copy lines from the file on the right into the selection

Default: Shift+H

merge_from_left_then_right
merge lines from file on the left then file on the right

Default: m

merge_from_right_then_left
merge lines from file on the right then file on the left

Default: Shift+M

isolate
isolate the selected lines

Default: i

Alignment Editing Mode Key Bindings
Use align_mode for the context to define key bindings for alignment editing mode. The
following values are valid for action:

enter_line_mode
enter line editing mode

Default: Escape

enter_character_mode
enter character editing mode

Defaults: Return, KP_Enter

first_line
move cursor to the first line

Default: g

last_line
move cursor to the last line

Default: Shift+G

up
move cursor up one line

Defaults: Up, k

down
move cursor down one line

Defaults: Down, j

left
move cursor left one file

Defaults: Left, h

right
move cursor right one file

Defaults: Right, l

page_up
move cursor up one page

Defaults: Page_Up, Ctrl+u

page_down
move cursor down one page

Defaults: Page_Down, Ctrl+d

align
align the selected line to the cursor position

Default: space

Character Editing Mode Key Bindings
Use character_mode for the context to define key bindings for character editing mode.
The following values are valid for action:

enter_line_mode
enter line editing mode

Default: Escape

Strings
string name value
Declares a string resource called name with value value.

Used String Resources
The following string resources are used by Diffuse:

difference_colours
a list of colour resources used to indicate differences

Default: difference_1 difference_2 difference_3

Colours
[ colour | color ] name red green blue
Declares a colour resource called name. Individual colour components should be
expressed as a value between 0 and 1.

Used Colour Resources
The following colour resources are used by Diffuse:

alignment
colour used to indicate a line picked for manual alignment

Default: 1 1 0

character_selection
colour used to indicate selected characters

Default: 0.7 0.7 1

cursor
colour used for the cursor

Default: 0 0 0

difference_1
colour used to identify differences between the first pair of files

Default: 1 0.625 0.625

difference_2
colour used to identify differences between the second pair of files

Default: 0.85 0.625 0.775

difference_3
colour used to identify differences between the third pair of files

Default: 0.85 0.775 0.625

edited
colour used to indicate edited lines

Default: 0.5 1 0.5

hatch
colour used for indicating alignment gaps

Default: 0.8 0.8 0.8

line_number
colour used for line numbers

Default: 0 0 0

line_number_background
background colour for the line number area

Default: 0.75 0.75 0.75

line_selection
colour used to indicate selected lines

Default: 0.7 0.7 1

map_background
background colour for the map area

Default: 0.6 0.6 0.6

margin
colour used to indicate the right margin

Default: 0.8 0.8 0.8

preedit
pre-edit text colour

Default: 0 0 0

text
regular text colour

Default: 0 0 0

text_background
background colour for the text area

Default: 1 1 1

Floating Point Values
float name value
Declares a floating point resource called name with value value.

Used Floating Point Resources
The following floating point resources are used by Diffuse:

alignment_opacity
opacity used when compositing the manual alignment colour

Defaults: 1

character_difference_opacity
opacity used when compositing character difference colours

Defaults: 0.4

character_selection_opacity
opacity used when compositing the character selection colour

Defaults: 0.4

edited_opacity
opacity used when compositing the edited line colour

Defaults: 0.4

line_difference_alpha
alpha value used when compositing line difference colours

Defaults: 0.3

line_selection_opacity
opacity used when compositing the line selection colour

Defaults: 0.4

Syntax Highlighting
syntax name [initial_state default_tag]
Declares a new syntax style called name. Syntax highlighting uses a simple state
machine that transitions between states when certain patterns are matched. The initial
state for the state machine will be initial_state. All characters not matched by a
pattern will be tagged as default_tag for highlighting. The syntax style called name
can be removed by omitting initial_state and default_tag.

syntax_files name [pattern]
Specifies that files with a name matching pattern should be highlighted using the
syntax style called name. Patterns used to match files for use with the syntax style
called name can be removed by omitting pattern.

syntax_magic name [pattern [ignorecase]]
Specifies that files with a first line matching pattern should be highlighted using
the syntax style called name. Patterns used to match files for use with the syntax
style called name can be removed by omitting pattern.

syntax_pattern name initial_state final_state tag pattern [ignorecase]
Adds a pattern to the previously declared syntax style. Patterns are tried one at a
time in the order they were declared until the first match is found. A pattern will
only be used to match characters if the state machine is in the state initial_state.
The state machine will transition to final_state if the pattern defined by pattern is
matched. Case insensitive pattern matching will be used if ignorecase is specified.
All characters matched by the pattern will be tagged as tag for highlighting.

Use diffuse online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    MSYS2
    MSYS2
    MSYS2 is a collection of tools and
    libraries providing you with an
    easy-to-use environment for building,
    installing and running native Windows
    software. It con...
    Download MSYS2
  • 2
    DOSBox
    DOSBox
    DOSBox emulates a full x86 pc with
    sound and DOS. Its main use is to run
    old DOS games on platforms which
    don't have DOS (Windows 7, 8, 8.1
    and 10 / Linux ...
    Download DOSBox
  • 3
    Xtreme Download Manager
    Xtreme Download Manager
    The project has a new home now:
    https://xtremedownloadmanager.com/ For
    developers:
    https://github.com/subhra74/xdm Xtreme
    Download Manager is a powerful tool t...
    Download Xtreme Download Manager
  • 4
    Clover EFI bootloader
    Clover EFI bootloader
    Project has moved to
    https://github.com/CloverHackyColor/CloverBootloader..
    Features:Boot macOS, Windows, and Linux
    in UEFI or legacy mode on Mac or PC with
    UE...
    Download Clover EFI bootloader
  • 5
    Sequelize
    Sequelize
    Sequelize is a promise-based Node.js
    ORM for Postgres, MySQL, MariaDB, SQLite
    and Microsoft SQL Server. It features
    solid transaction support, relations,
    eager...
    Download Sequelize
  • 6
    unitedrpms
    unitedrpms
    Join us in Gitter!
    https://gitter.im/unitedrpms-people/Lobby
    Enable the URPMS repository in your
    system -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    Download unitedrpms
  • 7
    Boost C++ Libraries
    Boost C++ Libraries
    Boost provides free portable
    peer-reviewed C++ libraries. The
    emphasis is on portable libraries which
    work well with the C++ Standard Library.
    See http://www.bo...
    Download Boost C++ Libraries
  • More »

Linux commands

Ad