https://link.springer.com/content/pdf/10.1007/s10664-019-09772-z.pdf
https://vimways.org/2018/the-power-of-diff/
https://stackoverflow.com/questions/
4045017/what-is-git-diff-patience-for
В git и vim можно явно указать алгоритм для генерирования diff-а. В git
я это использовал давно (diff.algorithm), но patience вместо histogram,
который вроде как ещё получше вывод делает для исходного кода.
В vim за это отвечает diffopt опция, в которой ещё и indent-heuristic
может принести пользу.