a structural diff tool that understands syntax
Difftastic is a CLI diff tool that compares files based on their syntax, not line-by-line. Difftastic produces accurate diffs that are easier for humans to read.
Understand What Actually Changed
Difftastic parses your code with tree-sitter. Unlike a line-oriented diff, difftastic understands that the inner expression hasn't changed here.
Ignore Formatting Changes
Has your code formatter decided to split something over multiple lines? Difftastic can show what has actually changed.
Visualise Wrapping Changes
Have you added a wrapper? Difftastic can match the delimiters exactly.
Even if you change the inner content, difftastic can still show you the additional wrapper.
Real Line Numbers
Do you know how to read
@@ -5,6 +5,7 @@ syntax? Difftastic shows the actual
line numbers from your files, both before and after.
60 Second Demo
Programming Languages
C++
C#
Clojure
Dart
Erlang
Go
Haskell
Java
JavaScript
Kotlin
Lisp
Lua
OCaml
PHP
Python
R
Ruby
Rust
Scala
TypeScript
And more! See the full list of supported languages in the manual.
Fully Open Source
Difftastic is MIT licensed. Download it, modify it, share it with your friends!
Made with Emacs and coffee by Wilfred Hughes.