Difftastic 0.30 is out! In this release:
* Added support for both Julia and HTML
* Better Unicode support
* Substantially improved dumb textual diffing performance too!
miniblog.
Related Posts
On the challenge of writing accurate source spans on Unicode source code: https://reedmullanix.com/posts/unicode-source-spans.html
Also (see footnotes) a fair number of LSP clients assume UTF-8 despite early versions of LSP mandating UTF-16!
In LSP, a position is represented as a line number and a column offset (in Unicode code units): https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#position
This is pretty elegant. You'll get the correct line regardless of encoding bugs, and the editor already knows the line number so it's cheap to compute.
Today in aggravating edge cases: difftastic would crash when line-wrapping content where Unicode combining characters occurred on the boundary. Argh.

