Florencesoft TextDiff is a Microsoft Windows desktop application which compares two plain text documents and reports their differences. It also compares folders (directories) against each other and can report and remove duplicates in lists of names, items, ingredients etc. A free trial can be downloaded from https://compare-text-files.com/downloads.html.
If you are running the Windows version, you can drag-n-drop text files onto its user interface or simply copy-n-paste text into its two text windows. The latter is a useful way to compare any kind of text regardless of its document type.
TextDiff is equally useful for the comparison of computer source code as it is for essays, reports and dissertations.
If you are an author and someone else is making changes to your documents, then you will need Florencesoft TextDiff at some point.
We wrote the software product DiffEngineX over a decade ago. DiffEngineX reports the differences between two Microsoft Excel workbook files on Windows. DiffEngineX uses the longest common subsequence (lcs) algorithm in three different places. The longest common subsequence algorithm finds the longest, in-order run of identical characters or strings between two documents.
DiffEngineX can optionally insert blank rows in two spreadsheets being compared such that equivalent rows line up with one another. The addition and deletion of spreadsheets rows can cause equivalent rows in the original and modified spreadsheets to end up displaced from one another.
Secondly when the text is compared across individual original and modified spreadsheet cells, DiffEngineX reports what characters have been left unchanged and what ones added and deleted.
Excel spreadsheets can contain Visual Basic for Applications (VBA) macros, which is embedded source code. Finding the differences between VBA macros is the third place where the longest common subsequence algorithm is used by DiffEngineX.
As we had the longest common subsequence on our hard drive in the source code of DiffEngineX, we thought it would be a simple matter to just develop a minimal user interface around the same code in order to compare text files instead of Excel spreadsheet files and as such produce Florencesoft TextDiff.
Well it so happens it wasn’t quite so simple!
The longest common subsequence algorithm reports the longest, in-order run of similar characters (or words or lines or paragraphs) between two documents. The key word here is in-order. If you have a document and you move a paragraph up or down in a document and compare the modified document to its original, the lcs algorithm will happily tell you the moved paragraph is either an addition or a deletion. This is obviously misleading!
We ended up producing the software product called Florencesoft TextDiff. It is quite capable of telling the difference between words, sentences or paragraphs that have been simply moved around or reordered from real additions and deletions.
In the screenshot below, you can see TextDiff uses the color green for new text, red for deleted text, blue for text moved up in a document and gray for text moved down.
In the next screenshot, you can see just how systematic and powerful our text difference algorithm really is. You can see that the paragraph beginning with the words “Our red fox….” has been moved up and as such is colored blue. However not only has it been moved up, but its sentences have been reordered. The sentence beginning with “The rain in Spain….” has been moved to the start of the paragraph. We can hardly color the sentence blue twice and so the software alternates the background color of the sentences between light blue and light yellow to indicate sentence reordering.
Rather recursively, we originally wrote DiffEngineX (compares Excel spreadsheets), because we had some code originally meant for comparing text, but back in the 1990s we didn’t have the time to finish the application it was meant for. And of course there was WinDiff to use back then!
The code for TextDiff allowed us to produce DiffEngineX, which allowed us to produce TextDiff….
If you are comparing two lists against each other and looking for what names, countries etc. have been added and removed, it is important both lists do not contain duplicated entries.
Consider if one list contains two entries for France and the other list only has one entry for France. If you compare both lists, the computer software will report that the second list has had the country France removed from it. Obviously this is misleading.
Florencesoft TextDiff can find and optionally remove duplicates from lists.
Florencesoft TextDiff can compare one folder (directory) of files against another one on Microsoft Windows. The user can select whether to Show All Files or Show Only Different Files.
Double-clicking on the result for a compared pair of files will show the differences, just so long as both files are either plain text or in the Rich Text Format (RTF). If Microsoft Word is installed as a desktop application, TextDiff can compare the text parts of Word documents as well.