Copyright: Copyright © 1996 Scooter Software


"Sync-it-yourself" Feature

The synchronization algorithm attempts to line up like text in the side-by-side File Viewer window.  Its logic is based on finding a certain number of contiguous matching lines  At times the program lines up the wrong lines.

You can manually override the text synchronization by right-clicking the lines you would like to line up, selecting Link from the popup menu.  The two lines that you select are forced together, and following lines are re-synchronized.

In the following example, we would like to synchronize the "begin" lines.  First, right-click over the left pane and select Link:

Then do the same over the right pane:

The result:

You can use this feature several times to link up different parts of the files, as long as you work in a downward direction.  Each manual link causes a re-synchronization of the text below it, which will undo any manual links in that area.


Command Line Parameters

You can run Beyond Compare with command line parameters to speed access to your favorite directories.  If you specify an existing session name, that session will be loaded when Beyond Compare starts.  For example:

BEYOND16.EXE My Application <-> Floppy

You can also specify two directories on the command line:

BEYOND16.EXE C:\ALPHA C:\BETA

Note:  If you specify directories on the command line, the filename filter will be "*.*".

Using Windows 3.x

You can create multiple icons in Program Manager - one for each session you use often.  In Program Manager, select File|New and create a new Program Item.  In the Program Item Properties dialog box, enter an appropriate Description, fill in the Command Line as described above, and enter the path to BEYOND16.EXE in Working Directory.

Using Windows 95

To place a shortcut to a specific session on your desktop, start up the Windows Explorer, then locate the Beyond Compare program and drag it to a blank area of the desktop.  Then, right-click on the shortcut, select Properties from the popup menu, select the Shortcut tab and add edit the Target field to include the session name.

Notice that if the path to the Beyond Compare program contains spaces, there will be quotation marks around the path.  Add the session name after the quotes.  For example:

"C:\Program Files\Beyond Compare\beyond32.exe" My Application <-> Floppy

Or, specify a pair of directories:

"C:\Program Files\Beyond Compare\beyond32.exe" C:\ALPHA C:\BETA

Another option in Windows 95 is to run Beyond Compare from a DOS prompt, or from the Start|Run command.  To save on typing, you might consider copying BEYOND32.EXE to your Windows directory, changing its name to something short like DC.EXE (for directory compare).  Then, you could type simply:

DC C:\ALPHA C:\BETA


Comparing Directories

This is Beyond Compare's main window.  You may have more or fewer buttons on the toolbar depending on your current properties settings.  Click on any area in the figure below for further explanation:

Colored text highlights changed files (based on file dates, sizes).  The small rectangular color spots hold their color when a line is highlighted, allowing you to clearly read highlighted text without losing the color cues.

If you have long filenames that are chopped off, drag the edge of the window for a wider display (or select a smaller font).

You select one or more lines in the list, and then pick an operation to perform on them.  Operations are selected from the menu, toolbar buttons, or popup menu.

Simply double-click a line to open the file viewer for a side-by-side comparison of text files.  To compare files with different filenames (in the same or different directories), right-click on each filename, selecting Link from the pop-up menu.

See also:

Printing a Directory Comparison Report

Setting Preferences


Comparing Files

This is the File Viewer window, highlighting the differences in text files side-by-side.  Click on any area in the figure below for further explanation:

The File Viewer window is limited to the following capacities for side-by-side comparisons of larger text files:

Program	Viewer Limitations

BEYOND16.EXE	The first 65,528 bytes of each file

BEYOND32.EXE	The first 20,000,000 bytes of each file, or 32,500 lines of comparison

These limitations do not apply to the Quick Compare function, which compares entire files.

See also:

"Sync-it-yourself" Feature

Editing Files

Viewing .DFM Files.

Ignoring Leading, Trailing Columns

Setting Preferences


Configuring the Toolbar

You can change the toolbar layout by right-clicking over it and selecting "properties" from the pop-up menu.  In this dialog box, drag buttons to or from the "currently on toolbar" list.  You can also rearrange the buttons by dragging them to different positions.

Notice that you can also move the toolbar to other sides of the window.

(Delphi programmers: This toolbar configuration facility is also available as an extremely easy to use VCL component.  Contact us for details.)


Contents

Beyond Compare

Beyond Compare is both a directory compare utility and a file compare utility wrapped in one.  It was designed for use in managing Delphi programming projects, but it is useful for any time you need to compare the contents of directories.

Overview

Comparing Directories

Comparing Files

Editing Files

Managing Sessions

Command Line Parameters

Setting Preferences

License, Ordering Info

Copyright © 1996-97 Scooter Software

All rights reserved

Delphi is a Trademark of Borland International


Delete button
Delete Files

This function deletes the selected files (after appropriate confirmation).


Directory Headers
This optional header area identifies the directories being compared.


Directory Statusbar
This optional status bar provides information about the files displayed above.


Display Filters

In addition to file filters which limit comparison to types of files, you can filter the directory display based on how the directory entries match.

Show Any

Display any file in the directories (as long as it conforms to the current file filters)

Show Mismatches Only

Display only those files whose directory entries differ.  Note that their contents are not necessarily different.

Show Matches Only

Display files with matching directory entries.  Note that their contents are not necessarily identical.

Show Double Sides Only

Display files that are both "here" and "there".

Show Single Sides Only

Display files that are "here" but not "there".  Useful for isolating missing or obsolete files.


Editing Files

You can selectively reconcile differences between text files by copying or deleting lines.

In the Viewer window, select the lines you would like to edit, then right-click over the selection.  Pick a copy or delete operation from the popup menu:

Deleted text is changed to gray with a strike-through line.  Copied text is colored teal in the target file, and a small red arrow indicates the direction of the copy:

The status bar shows a reminder that a file has been modified.  You can cancel editing by selecting lines and picking Undo Edit from the popup menu.


File Copy buttons
Copy Files

These buttons control the copying of selected files from the left directory to the right, or vice versa.  For details, see File Operations


File Headers
This optional header area identifies the files being compared.


File Operations

To perform the various file-related operations, select one or more files in the main window, then either:

•	pick File from the main menu and select the desired function,

•	click the appropriate toolbar button, or

•	right-click over the files to bring up a popup menu of functions:

Quick Compare

This function does a binary comparison of the selected files.  The files can be of any type.  A message informs you whether all files match or which files don't.  See also When Quick Compare is useful

Copy Files

This function copies selected files from the left directory to the right - or vice versa.

A dialog box prompts you to confirm the copy operation.  If you attempt to copy an older file over a newer one a larger warning box appears.

Before copying over a file, Beyond Compare renames the file in the target directory.  It takes the original filename and inserts a tilde (~) in the extension.  For example, BEYOND16.EXE would become BEYOND16.~EX.  You can disable this feature by de-selecting the "Make Backup Before File Copy" option.

Delete Files

This function deletes the selected files (after appropriate confirmation).  For double-sided entries, you are prompted for each file separately.

Link Files

This function lets you compare two files with different names.  Right-click over the first file and select Link from the popup menu.  Then do the same for the second file.  The files can be in the same directory or different directories.


File Viewer Properties

Toolbar

Deselect this option to hide the toolbar.

Arrange Buttons

You can edit the toolbar configuration to add buttons for optional features, or to remove buttons that you don't use.

Headings

Deselect this option to hide the column headings that show file specifiers.

Statusbar

Deselect this option to hide the status bar that holds line numbers and the horizontal scroll bar.

Matching Text

Select the color for entire lines of text that match.

Similar Text

Select the color for similar text.  Similar text differs only in leading or trailing whitespace, or upper- lower-case mismatches.

Different Text

Select the color for text that doesn't match.

Font

Click this button to select a font for the displayed text.  Use a monospaced font, such as Courier, for columnar text or files with tabs.


Ignoring Leading, Trailing Columns

If your text files contain line numbers at the beginning or end of each line (such as COBOL source), you may want to ignore them for the purpose of comparing text.  You can specify the first and/or last significant column in Sync Algorithm Properties.

The ignored columns are displayed in gray.


Just Differences button
Just Differences

Select this option to display only the mismatched lines of text.


License, Ordering Info

Beyond Compare is distributed as shareware.  It is not freeware or public domain.  You may copy and distribute it freely, but if you use it beyond a 30 day evaluation period you are obliged to pay the license fee.  The unregistered program will stop functioning after 45 days.

BEYOND16.EXE is the 16-bit version of Beyond Compare and runs well under Windows 3.x and Windows 95.  BEYOND32.EXE runs under Windows 95 and supports long file names and larger text files.

The single user license fee is US$30.  This entitles one user to use the program (either or both versions) on any number of PCs.

For multiple users within a single organization, each additional $20 doubles the number of licensed users.  (2 user license = $50, 4 user license = $70, etc.)

To Register

To register by mail, make checks payable to Scooter Software and send to:

Scooter Software

c/o Computations Unlimited

2828 Marshall Court, Suite 208

Madison, WI  53705-2276

Wisconsin residents:  please add 5.5% sales tax.

Or, if you have a CompuServe account, you can register through the Shareware Registration database.  GO SWREG and specify ID #13019, and the $30 fee will be added to your CompuServe bill.  Please note that SWREG cannot handle our pricing structure for multiple users.

In either case, be sure to include your name, organization (if any) and e-mail address.  Registered users will be sent a registration number via e-mail that disables the reminder screen.  Once you receive it, select Help|Register in order to enter your registration number.  Your registration number will also work with all subsequent minor version updates.

Support

Registered users are entitled to prompt e-mail support.  We are also happy to support unregistered users while they are evaluating the software.

Please send any comments, suggestions or bug reports to:

Tim Thousand

t1000@mailbag.com

For the latest version of Beyond Compare, visit our web site at http://www.mailbag.com/users/scooter

If these addresses ever become obsolete, you should be able to find us by searching Alta Vista for "Beyond Compare" or "Scooter Software".


Main Window Properties

Directory Dialog on Startup

If this option is selected, the Select Directories dialog will automatically display on startup.  If you usually select a session from the recent sessions portion of the File menu, you will find it faster to deselect this option.

Make Backup Before File Copy

If this option is selected, Beyond Compare makes a backup copy of a file before copying over it.  The backup file will have the same file name, but have a squiggle ('~') inserted in the file extension.  For instance, ABC.TXT becomes ABC.~TX.

Main Menu

Select (check) this option to display the main menu in the directory compare window.  Deselect (uncheck) it to hide the menu.

Toolbar

Deselect this option to hide the toolbar.

Arrange Buttons

You can edit the toolbar configuration to add buttons for optional features.  You can remove buttons for features that you don't use - or that you access through popup menus instead.

Headings

Deselect this option to hide the column headings that show directory paths.

Statusbar

Deselect this option to hide the status bar at the bottom of the window.

Matching Files

Select the color for files with matching directory entries.

Newer Files

Select the color for newer files.  This color is also used when the dates match but file sizes don't.

Older Files

Select the color for older files.

Single Side Files

Select the color for files that exist in one directory but not the other.

Color Spots

Color Spots are small rectangles that hold their color when a line is highlighted, allowing you to clearly read highlighted text without losing the color cues.

Font

Click this button to select a font for the directory lists.


Managing Sessions

A unique feature of Beyond Compare is its use of named "sessions" to remember where your different projects are located and what types of files you want to synchronize.  Sessions are stored in the BEYOND16.INI (or BEYOND32.INI) file located in your Windows directory.

For example, the "My Application <-> Floppy" session could identify C:\DELPHI\MYAPP as the left-hand directory; A:\ as the right-hand directory; and *.pas, *.dfm, *.dpr, *.bmp as the file filters.  You can leave out other files such as *.dcu, *.dsm and *.dsk which you probably don't want to copy to a different Delphi installation.

Alternatively, you can include all files (*.*) and then specify files to skip.  Use a hyphen in front of a file filter to exclude that class of files.  For instance, the filter -*.~?? will suppress the display of the "backup" files that Beyond Compare creates.  Exclusion filters should come after filters that include the files that you want to exclude.  Clear?

The <untitled> session refers to the last time you used Beyond Compare without using or saving a named session.

Creating a New Session

In the Select Directories dialog, once you've specified the directories and filters, click "Save As" and enter a descriptive name.

Returning to a Session

Select File from the menu and pick from the 9 most recently used sessions, or pick any session from the drop-down list in the Select Directories dialog.

If you typically pick a session from the File menu you may want to disable the Directory Dialog on Startup option.  See Main Window Properties.

Speed Tip:  You can create an icon to run Beyond Compare with a particular session name on the command line.

Modifying a Session

To change an existing session, select it from the drop-down "Session" list in the Select Directories dialog, make the desired changes to the drives, directories or filters, and click "Save As".

To delete a session, select it and click "Remove".


Matching Files
Matching directory entries are shown in black by default.


Matching Text
Lines that are identical are displayed in black by default.


Mismatched Text
Mismatched lines are displayed in color.  One color is used for "similar" text and another is used for different text.

"Similar" text is defined as differing only in leading or trailing whitespace, or upper vs lower case.  Lines are scanned from their ends towards the middle until different (non-similar) text is found.


Newer File
Files with newer date stamps are shown in red by default.  Also, files with matching date stamps but differing sizes are shown in red in both directories.


Next, Prev buttons
Next Difference, Previous Difference

These buttons jump to the next or previous section of mismatched text.


Older File
Older files are shown in gray by default.


Overview

Have you ever struggled with synchronizing source files between directories?  Hard disk and floppy?  Keeping track of changes you made at home verses at work?

There are many tools that will blindly synchronize directories based on modification date, but sometimes it's the older file that you need to keep.  Or just two lines of code in the older file that you need.  Also, have you noticed that Delphi sometimes modifies .DPR and .DFM files without changing their date stamps at all?

We have projects where we share source with outside programmers, and we tinker with certain components at home.  We needed a tool that speeds the distribution of source files, but also lets us carefully analyze changes to code.  So we wrote this one...

Directory Compare Features:

Side-by-side comparison of two directories sorted by filename

Multiple filename/extension filters

Saves your favorite project "sessions" for fast repositioning

Color highlighting of newer files, mismatched files

Copy, delete functions

Fast binary compare of files - are they really the same?

File Compare Features:

Side by side comparison of two text files

Color highlighting of mismatched, inserted lines

Copy lines of text from one file to the other - delete lines

"Sync-it-yourself" manual synchronization override

Displays Delphi .DFM files as text - identifying changes to forms

Handles very long lines


Popup Menu
This popup menu of shortcut functions appears when you right-click over selected files.


Popup Viewer Menu
Right-click over a line in order to manually override the text synchronization.


Printing a directory comparison

Printing a Directory Comparison Report

To get a printed report of the current directory comparison you can either:

•	select Display|Report from the main menu, or

•	click the Report button on the toolbar (you can add this button if it's not already there)

The report that is produced mimics the layout of the main window.  The display filter buttons control both the main window and the report contents.


Quick Compare button
Quick Compare

This function does a binary comparison of the selected files.  The files can be of any type.  A message informs you whether all files match or which files don't.


Refresh button
Refresh

Click this button to refresh the directory display.  This will reflect any changes made by other applications or other network users.


Report button
Report

This optional button produces a report that mimics the current directory comparison.


Select All button
Select All

Click this button to select all the displayed files.


Select Directories

To open the Select Directories dialog, you can either:

•	select File|Directories from the main menu, or

•	click the Select Directories tool button

Speed Tip: You can bypass this dialog by selecting a recently used session from the File menu.

Session

This drop-down combo box allows you to either select an existing session, or to enter a new session name.  Click the Save button to save the current settings under this name.  Click Remove to delete this session.  See also Managing Sessions.

Drives and Directories

Use the drive and directory controls to select the "left" and "right" directories for comparison.  The order isn't important - either can be used as source or target in file operations.

Filters

Specify the types of files you want to compare in this free-format memo field.  Enter one file specification per line.

Use a hyphen in front of a file specification to exclude that class of files.  For instance, the filter -*.~?? will suppress the display of the "backup" files that Beyond Compare creates.  The filters are applied in order, so exclusion filters should come after other filters.


Select Directories button
Select Directories

This button opens the Select Directories dialog.  Use it to set or change the directories to compare, or the file filters to use.


Select Newer button
Select Newer

Click this button to select the files in the left pane that are newer than those in the right pane.  Click it again to select newer files in the right pane.


Selected File
Selected files are highlighted in the normal manner.  You can click and drag to select several adjacent lines, or you can hold the Ctrl key down while you click specific lines.

Select one or more lines before picking an operation to perform on them.


Setting Preferences

Beyond Compare's optional features are controlled through the Properties dialog.

To get to the Properties dialog you can either:

•	select Display|Properties from the main menu

•	click the Properties button on the toolbar (if it's there), or

•	right-click over a toolbar, heading or statusbar area and then select Properties from the popup menu.

The Properties dialog contains three tabbed pages:

Main Window Properties

File Viewer Properties

Sync Algorithm Properties

The resultant configuration is stored in the BEYOND16.INI (or BEYOND32.INI) file in your Windows directory.

If you are upgrading from BEYOND16 to BEYOND32 and would like to keep your sessions and other settings, you can copy BEYOND16.INI over BEYOND32.INI.


Show Any button
Show Any

Display any file in the directories (as long as it conforms to the current filters)


Show Double Sides Only button
Show Double Sides Only

Display files that are both "here" and "there".


Show Matches Only button
Show Matches Only

Display files with matching directory entries.  Note that their contents are not necessarily identical.


Show Mismatches Only button
Show Mismatches Only

Display only those files whose directory entries differ.  Note that their contents are not necessarily different.


Show Single Sides Only button
Show Single Sides Only

Display files that are "here" but not "there".  Useful for isolating missing or obsolete files.


Single Side File
"Single Side" files are in one directory but not the other.  They are shown in purple by default.


Status Bar
The optional Status Bar displays line numbers, modification indicators, and a scroll bar that scrolls left and right views simultaneously.


Sync Algorithm Properties

Minimum Lines in Match

This represents the minimum number of lines that need to match before Beyond Compare will synchronize text.  Enter a number between 1 and 50 (the default is 5).  A larger value helps prevent syncing on trivial matches, such as "begin" and "end" statements in Pascal.  A "Hot Match" (see below) overrides this rule.

Skew Tolerance

Skew tolerance is the number of lines Beyond Compare will search forward or backward in a file, looking for a matching sequence.  You can normally keep this value rather high (the default is 9999) when working with small to moderately large text files.  However, comparing huge files with long sections of mismatched text can be quite slow.  Use a smaller number for higher performance, especially if large insertions or deletions of text are not likely.

Starting Column for Compare

Enter the first significant column for text comparison.  This is useful if your text files contain line numbers (such as COBOL source) and you don't want them to affect the text comparison.  The columns are displayed in gray to remind you that they are being ignored.

Ending Column for Compare

Enter the last significant column for text comparison.  Beyond Compare will ignore any text to the right of this column for comparison purposes.  The ignored text is colored gray.  Leave this field zero to disable the feature.

Enable "Hot Match" Feature

The Hot Match feature gives synchronization preference to important lines.  Currently, only certain Pascal keywords are recognized:  "procedure", "function", "constructor" and "destructor".  Lines that match and contain one of these words override the "minimum lines in match" rule.

Ignore Leading, Trailing Whitespace

Leading and trailing whitespace is defined as any spaces or tabs found at the beginning or end of lines.

If this option is not selected, lines with differences only in whitespace are considered "similar".  They will be synchronized, but they appear in the Similar Text color and they count as mismatches for the Display Just Differences, Find Next Difference and Find Previous Difference operations.

If this option is selected, differences in leading and trailing whitespace are ignored altogether.


Toolbar
The Toolbar buttons can be rearranged.  And, there are additional buttons not shown here that you can add.  See Setting Preferences.


Viewing .DFM Files.

Viewing .DFM Files

Borland Delphi's .DFM files are binary files, but Beyond Compare converts them to text for viewing.  They are displayed side-by-side so you can identify form properties that have changed.

To save space in the viewer, bitmap properties (such as button glyphs) are represented as a four byte CRC value, providing a reasonably high accuracy in detecting changes.

You cannot edit .DFM files in this release of Beyond Compare.


When Quick Compare is Useful

It is possible that two files can have identical directory entries yet contain different data.

Corrupted Data

Quick Compare is a good way to verify that data copied to a floppy is readable.

Bad Timestamps

As wonderful as it is, Delphi has a bad habit of modifying .DPR files without updating the date/time in their directory entries.  Usually the file sizes will change but sometimes they don't.  Use Quick Compare to verify that "matching" files are really identical.

To Use Quick Compare

Select one or more files in the main window, then either click the Quick Compare button, or right-click over the files and select Quick Compare from the popup menu.