I've come to realise that the goal of a diff tool isn't to say what's changed. You want it to say what *hasn't* changed.
Unchanged content is crucial for deciding how to group changes into hunks and how to align lines. You need matched content pairs for this.
miniblog.
Related Posts
Linux historically used magic numbers to recognise structs being used incorrectly with void pointers. These have been increasingly replaced with type-safe macros: https://lwn.net/SubscriberLink/915163/ba83480903b82cb8/
Some of the original files were unchanged from the 90s!
I'm experimenting with line number styling in difftastic. The first screenshot is the old version, and the second screenshot shows the new.
I want line numbers to be visually distinct from content. The new version is using dim text for unchanged lines, and bold otherwise.
I've released difftastic 0.32! A small release, but well worth upgrading:
* Difftastic is now smarter at discarding obviously unchanged content, producing much faster diffs in a bunch of cases
* Fixed a crash on Windows when a whole file is added/removed


