SRCCOM

Updated February 2022; see History

SRCCOM {listfile=} oldfile, newfile {switches}

SRCCOM compares two source files, reporting the differences. This is useful, for example, when comparing two versions of a program to see what has changed between them. It is most useful when the differences between the files are few; when they are substantial, it becomes both overwhelmed and overwhelming.

Switch

Effect

/B

Brief listing – same as /Q but without line numbers

/Q

Quick listing – list only the lines that differ between the two files

/?, /H

Writes switch listing and usage info to the screen.

 

Under UNIX, there is a much more powerful file comparison utility call diff, and in some cases, diff3, which can compare three files at a time. See the notes on DIFF, a A-Shell front-end to diff.

Note also that SRCCOM.LIT includes the list file name and switches in the listing header, matching the format of the AMOS version.

History

2021 December, A-Shell 6.5.1709:  SRCCOM.LIT 2.0(201) rewritten to implement various improvements/fixes:

•   No longer requires a memory partition of 1MB or more.

•   Supports a new switch /S which ignores whitespace differences.

•   Removed limit on line length, which previously was 512 characters.

•   Supports inserted blocks of up to 10000 lines, up from 750.

•   Reduces tendency for single-line "premature matches". For example, when a block of new code is inserted, SRCCOM previously would re-sync on a single line match (even a blank line) between the original code and the new code, causing the inserted block to appear like a fragmented series of multiple insertions instead of a single block.

•   Is now able to recognize "parallel differences" of up to 100 lines. These result from line changes rather than insertions/deletions.

•   The /Q mode now outputs the matching pair both before and after a set of differences.