When starting this tutorial, a directory diff window is started showing some example files.
Line Zoom
\u2022\tDouble click on "longline.txt" in any of the file lists to bring up a diff of that file.
\u2022\tRight click on any line in the diff window to see the "zoom" function.
\u2022\tClose that diff window and return to the directory diff.
Separate Diff
\u2022\tDouble click on example.c.
In the file there is a block starting with "case TEXT_CGET" that apparently has been moved since a similar block can be found further down in the other side.
\u2022\tRight click over the line numbers belonging to that block in the left part, and select "Mark for Separate Diff".
\u2022\tScroll down and right click over the line numbers belonging to the block in the right part, and select "Separate Diff".
A diff window appears, revealing that there was a small difference within the moved block.
\u2022\tClose the last diff window.
Alignment
Return to example.c. Double click in the directory diff if needed.
Another way to achieve the same check as in the Separate Diff above is to align rows that the first diff do not think belong together.
\u2022\tScroll to the line "case TEXT_CGET" in the left window and right click on the line number.
\u2022\tSelect "Mark line for alignment".
\u2022\tScroll down to the line "case TEXT_CGET" in the right window and right click on the line number.
\u2022\tSelect "Align with line xx on other side".
Now those lines are remembered, and you could add more alignment pairs before you proceed with regenerating the view.
\u2022\tSelect menu File->Redo Diff.
Scroll down and see that the lines are next to each other. Also note that their line numbers are underlined.
You can clear the alignment information in the right-click menu over a line or by selecting the menu Tools->Clear Align.
Three way merge
\u2022\tDouble click on merge.txt to bring up the diff.
\u2022\tSelect menu File->Open Ancestor File.
\u2022\tSelect file mergeanc.txt
The merge window will appear with most changes merged. Conflicts are marked with gray, and a row of asterisks in the status bar. Conflicts are resolved to the right initially. Navigate between conflicts using ctrl-up/down keys. Select side with left/right keys. Hover over the status bar to see ancestor info.
Regular expression preprocessing
Sometimes there are things in files being compared that you want to highlight or disregard. This preprocessing step applies search/replace regular expressions on the files being compared before lines are matched. The result is only used for determining equality. The original is always used for display and if lines differ after preprocessing, all changes are shown for that line.
[add reference to re_syntax and regsub manuals]
Double click on enum.c to bring up the diff.
\u2022\tSelect menu Options->Preprocess.
\u2022\tIf there is no clear set, press "Add" to add a new preprocessing set.
\u2022\tPress "Edit" to edit that preprocessing set.
\u2022\tEnter the regular expression "^.*?\\m(Apa\\w+).*$" in the Regexp field.
\u2022\tEnter "\\1" in the substitution field.
\u2022\tEnter a word starting with "Apa" in one of the example fields and see that the result is just that word.
\u2022\tPress "Ok" and select menu File->Redo Diff.
A shortcut for the above is to use "-prefix Apa" on the command line, or to use the "Add Prefix" button and enter "Apa" as prefix.
Changed filename in directory diff
\u2022\tRight click on "namechange1" in Directory Diff's left window.
\u2022\tSelect "Mark File" in the menu.
\u2022\tRight click on "namechange2" in Directory Diff's right window.
\u2022\tSelect "Compare with..." in the menu.
More to be written...