Features
- Language syntax highlighting with color themes
- Within-line highlights based on a Levenshtein edit inference algorithm
- Side-by-side view with line-wrapping
- Line numbering
n
andN
keybindings to move between files in large diffs, and between diffs inlog -p
views (--navigate
)- Improved merge conflict display
- Improved
git blame
display (syntax highlighting;--hyperlinks
formats commits as links to GitHub/GitLab/Bitbucket etc) - Syntax-highlights grep output from
rg
,git grep
,grep
, etc - Support for Git's
--color-moved
feature. - Code can be copied directly from the diff (
-/+
markers are removed by default). diff-highlight
anddiff-so-fancy
emulation modes- Commit hashes can be formatted as terminal hyperlinks to the GitHub/GitLab/Bitbucket page (
--hyperlinks
). File paths can also be formatted as hyperlinks for opening in your OS. - Stylable box/line decorations to draw attention to commit, file and hunk header sections.
- Git style strings (foreground color, background color, font attributes) are supported for >20 stylable elements
delta | git | diff-so-fancy / diff-highlight | github/gitlab | |
---|---|---|---|---|
language syntax highlighting | ✅ | ❌ | ❌ | ✅ |
within-line insertion/deletion detection | ✅ | ❌ | ✅ | ✅ |
multiple insertion/deletions detected per line | ✅ | ❌ | ❌ | ✅ |
matching of unequal numbers of changed lines | ✅ | ❌ | ❌ | ❌ |
independently stylable elements | ✅ | ✅ | ✅ | ❌ |
line numbering | ✅ | ❌ | ❌ | ✅ |
side-by-side view | ✅ | ❌ | ❌ | ✅ |
In addition, delta handles traditional unified diff output.