Guiffy Compare/Merge Controls

This page introduces the compare/merge controls for Guiffy.

Ignore Options

The Ignore options dialog controls Guiffy's compare/merge in terms of ignoring case or whitespace, blanklines, field(s)(in columns A-B and X-Y), or changes matching a regular expression while comparing and/or merging files. Each of the options may be selected for only during compare, only during merge, or both. Selecting the Show Ignored differences for Compare views results in a view of the 2nd file which reflects the file's content(including any ignored differences). This selection is useful if you wish to make a variant of the 2nd file by picking some of the changes from the first file, perhaps do some editing, and then Save the new 2nd file. The merge results when a difference is ignored are the contents from the 1st file. Choose Options -> Ignore to select these controls.

Ignore Case

Causes Case of the text to be ignored during the compare and/or merge.

Ignore Whitespace

Causes Whitespace ( spaces and tabs ) differences to be ignored during the compare and/or merge. The Whitespace differences to be ignored are controlled by type: Leading, Embedded, and/or Trailing. Leading Whitespace is at the beginning of the line (up to the first non-whitespace character). Embedded Whitespace is between the first and last non-whitespace characters in the line. Trailing Whitespace is at the end of the line (after the last non-whitespace character).

Ignore Blanklines (inserted or deleted)

Causes Blanklines (inserted or deleted) to be ignored during the compare and/or merge.

Ignore Field(s) in Columns A-B and X-Y

Causes differences in columns specified to be ignored during the compare and/or merge. One or two separate fields can be specified.
Tabs are expanded prior to determining columns content.

Ignore changed, inserted, or deleted lines matching a regular expression

Causes changed, inserted, or deleted lines which match any of the regular expressions to be ignored during the compare and/or merge.
Examples:
guiffy --- Matches lines containing the word guiffy
^guiffy$ --- Matches lines containing only the word guiffy
^[:blank:]*//.*$ --- Matches lines containing only C++ comments
(guiffy|suremerge) --- Matches lines containing the word guiffy or suremerge
^[ \t]*//.*\$Date:.*\$.*$ --- Matches lines containing the VSS $Date keyword within C++ comments

Here's a reference for the Jakarta Regular Expression engine used in Guiffy: RE Reference

Show Ignored differences

Results in a Compare view of the 2nd file which reflects the file's content(including any ignored differences).

Show Options

The Show options dialog controls Guiffy's compare display in terms of tab spacing, display only the differences or entire files, display of the differences within N lines of context (When files are > specified size), display inline differences, and display of line numbers. Choose Options -> Show to select these controls.

Show Tab Size

Sets the number of spaces to be displayed for one tab character. The default is 8 spaces.

Show Only Differences

Causes the compare expression to show only the differences.

OR Show Differences within N Lines of Context

By default, Causes the compare expression to show differences with the selected number of lines of matching text before and after each difference.

When files are > nnnnKb

These default settings are referred to as Folded Compare/Merge Views

Show Inline Differences

Highlight Inline Differences when < NN% of line. The default is 50% and the difference is highlighted as a single string. Alternatively, the differences can be highlighted character-by-character.
The NN% is calculated as the length of the span from the first character diff to the last chacter diff (divided by the length of the line).

Show Line Numbers

Causes the compare expression to show the line number with each line of text displayed.

Folder Ignore Options

The Folder Ignore options dialog controls Guiffy's Folder Compare. The Folder Compare Ignore options include: Ignore these SubFolders, Ignore these Files, Ignore these FileTypes, Ignore Symbolic Links, Ignore Modified Date and Time, Ignore File Size and Verify Files Match(byte-by-byte) or by Text compares. Choose Options -> Folder Ignore to select these controls.

Ignore these SubFolders

Causes Folder Compares to Ignore the SubFolders listed(separated by ';'s). SubFolders to Ignore may also be specified as "SubPaths" such as "Backup/Release". And, SubFolders to Ignore may be specified using the * wildcard such as ".*".
Example: Debug;Release;images;.*
During a Folder Compare(when comparing recursively) any folder matching one of listed SubFolders to Ignore is NOT compared(recursively).

Ignore these Files

Causes Folder Compares to Ignore the Files listed(separated by ';'s). Files to Ignore may also be specified using the * wildcard such as ".#*".
Example: Guiffy.jar;.#*

-OR- Ignore All Files Except these

Causes Folder Compares to Ignore all Files Except those listed(separated by ';'s). Files not to Ignore may also be specified using the * wildcard.
Example: Guiffy*;Jiffy*;SureMerge*

Ignore these FileTypes

Causes Folder Compares to Ignore the FileTypes listed(separated by ';'s).
Example: .class;.jar;.exe

-OR- Ignore All FileTypes Except these

Causes Folder Compares to Ignore all FileTypes Except those listed(separated by ';'s).
Example: .java;.html

Ignore Symbolic Links

Causes Folder Compares to Ignore Symbolic Links --- often found in Unix/Linux build environments.
Folder Compares automatically detect and ignore circular links.

Ignore Modified Date and Time

Causes Folder Compares to Ignore the file's Modified Date and Time.

Ignore File Size

Causes Folder Compares to Ignore the file's Size.

Verify Files Match(byte-by-byte)

Causes Folder Compares to Verify if a file pair seem to match by performing a quick byte-by-byte(binary) compare(stopping on the first difference).

Verify Files Match(Text compare)

Causes Folder Compares to Verify if a file pair seem to match by performing a Text compare(stopping on the first difference). The Text compare ignores end-of-line differences, applies the Encoding selection and any file compare ignore options selected.

Folder Show Options

The Folder Show options dialog controls Guiffy's Folder Compare display. The Folder Compare Show options include: Show SubFolders, Show Details, Show Matching files, Show files Added, Show files Deleted, Show files Changed. Choose Options -> Folder Show to select these controls.

Show SubFolders (Recursively)

Causes Folder Compares to recursively compare SubFolders - Folder Compare becomes a Tree Compare.

Show Details (Size and Modified Date)

Causes Folder Compare to display the details (file size and modified date).

Show compare using default Tree Font

Causes Folder Compare to use the default Tree Font (rather than Font settings).

Show Matching files

Causes Folder Compares to display Matching files.

Show files Added

Causes Folder Compares to display files Added.

Show files Deleted

Causes Folder Compares to display files Deleted.

Show files Changed

Causes Folder Compares to display files Changed.

Compare/Merge Bifocal "Shades" Control

The Compare/Merge Bifocal "Shades" dialog controls which type of compare alogrithm to apply for file compares and 2-way merges. Plus, the Attention Focus Expander allows you to expand the attention(conflict) area for 3-way SureMerges.

Minimize Lines Changed in Diff

This compare algorithm choice will show the differences with a view shaded to the minimum number of lines changed.
If either file has more than 32K lines, Guiffy automatically switches to the Minimize Blocks algorithm.

Minimize Blocks Changed in Diff

This compare algorithm choice will show the differences with a view shaded to reduce the number of change blocks.

Expand Attention Focus of SureMerge by nn Lines

Guiffy's 3-way SureMerge automatically applies the Minimize Blocks compare algorithm and identifies changes of any type(deletes, inserts, or changes) within the same space for the attention of the user to resolve. If changes do not overlap but are very close, the Guiffy Minimize Blocks and SureMerge algorithms will automatically place those changes in the user's attention view. Expanding the Attention Focus will result in more changes which are near to each other placed in the user's attention view.
If the Minimize Blocks algorithm is selected, Expanding the Attention Focus will also affect file compare and 2-way merge views.

See also:

Toolbar
Options Menu
Folded Compare/Merge Views