Comparing sources: Difference between revisions

From DataFlex Wiki
Jump to navigationJump to search
Line 12: Line 12:
''' General Tab Page '''
''' General Tab Page '''
  Name : DataFlex
  Name : DataFlex
  Associated with: .src;*.pkg;*.dg;*.vw;*.dd;*.sl;*.ddo;*.rv;*.tt?;*.wo;*.utl;*.nui
  Associated with: *.src;*.pkg;*.dg;*.vw;*.dd;*.sl;*.ddo;*.rv;*.tt?;*.wo;*.utl;*.nui


  x Whitespace includes TABS and spaces
  x Whitespace includes TABS and spaces

Revision as of 20:07, 12 November 2007

Comparing Sources

When comparing source between different Visual DataFlex versions it is a HUGE time saver to do this using source code compare tools. Below is a few rules one can use to compare sources between VDF11.1 and VDF12.1

The tips below are for a product called Beyond Compare, but i'm sure your product will do fine too. If you are not using a product for this then GO BUY ONE! it is the best investment you can make EVER. Alternative products that come to mind are: Araxis merge, WinDiff or the free WinMerge on Windows Meld is a linux one if that's your party, or go here and see them all.

How-to set up Beyond Compare

In order to change the rules on how BC compares, you should go into compare source mode and then click on the "guy with the cap" in the toolbar

General Tab Page

Name : DataFlex
Associated with: *.src;*.pkg;*.dg;*.vw;*.dd;*.sl;*.ddo;*.rv;*.tt?;*.wo;*.utl;*.nui
x Whitespace includes TABS and spaces

Importance Tab Page

Unimportant text group >> put a check in all of the checkboxes
This is also the place where you can add custom rules/filters

Custom filters

1. Ignore differences in comments.

Click on New, Category Delimited
Beginning with: //
Check "stopping at end of line"

2. Ignore new metadata markup

Click on New, Category Delimited
Beginning with: {
and ending with: }

3. Ignore "current_object" vs "self" syntax

Click on Regular expressions
 (?i).*current_object.*|.*self.*

4. Ignore difference between writing "Use foo" and "Use foo.pkg"

Click on Regular expressions
(?i)^\s*use\s+.*|^\s*use.*\.pkg

5. Ignore changed writing style for constants: C$_FOO vs C_$FOO

Click on Regular expressions
(?i)\s+C\$_.*|\s+C_\$.*

6. Ignore "string" vs. "local string"

Click on Regular expressions
 (?i)^\s*local\s+string.*|^\s*string.*
Replace string with date / integer / number to filter other similar code.