Using an idea grabbed from a mailing list post, I implemented the diff algorithm discussed in the following paper (free registration required):
P. Heckel, A technique for isolating differences between files
Comm. ACM, 21, (4), 264–268 (1978).
The implementation, itself, has two functions, one of which is recommended for use:
- diffString( String oldFile, String newFile )
- This method takes two strings and calculates the differences in each. The final result is the ‘newFile’ marked up with HTML (to signify both deletions from the oldFile and additions to the newFile).
- document.body.innerHTML = diffString(
- "The red brown fox jumped over the rolling log.",
- "The brown spotted fox leaped over the rolling log"
red brown fox jumped over the rolling log.