Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dandavison/delta
A syntax-highlighting pager for git, diff, grep, and blame output
https://github.com/dandavison/delta
color-themes delta diff git git-delta pager rust syntax-highlighter
Last synced: 6 days ago
JSON representation
A syntax-highlighting pager for git, diff, grep, and blame output
- Host: GitHub
- URL: https://github.com/dandavison/delta
- Owner: dandavison
- License: mit
- Created: 2019-06-24T15:00:13.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-12-09T23:04:06.000Z (about 2 months ago)
- Last Synced: 2025-01-06T13:11:32.119Z (20 days ago)
- Topics: color-themes, delta, diff, git, git-delta, pager, rust, syntax-highlighter
- Language: Rust
- Homepage: https://dandavison.github.io/delta/
- Size: 10.2 MB
- Stars: 24,977
- Watchers: 86
- Forks: 402
- Open Issues: 294
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- orm-awesome - delta
- stars - dandavison/delta - highlighting pager for git, diff, grep, and blame output (HarmonyOS / Windows Manager)
- awesomeLibrary - delta - A syntax-highlighting pager for git, diff, and grep output (语言资源库 / rust)
- awesome-rust-tools - delta - highlighting pager for git, diff, and grep output. (Dev-Utilities)
- my-awesome-github-stars - dandavison/delta - A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
- awesome-starred-test - dandavison/delta - A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
- awesome-github-repos - dandavison/delta - A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
- awesome-repositories - dandavison/delta - A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
- awesome-github-star - delta - highlighting pager for git, diff, and grep output | dandavison | 18612 | (Rust)
- awesome-diff-tools - delta - Pager for (git) diff, adds syntax highlighting, inline and side-by-side view, support for git blame and merge conflicts. (Source Code / Diff Enhancers)
- awesome-cli-tui-software - dandavison/delta - A viewer for git and diff output (<a name="git"></a>git)
- awesome-devtools - Delta - A tool to see differences between text files. ![ossoft][oss] (Command line - Linux / Learning resources)
- awesome-list - delta
- awesome-alternatives-in-rust - delta - A viewer for git and diff output (Applications / System tools)
- StarryDivineSky - dandavison/delta
- awesome-tuis - delta - highlighting pager for git, diff, and grep output (Table of Contents)
- jimsghstars - dandavison/delta - A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
- awesome - 🦀 delta - A syntax-highlighting pager for git, diff, and grep output (System & Command / Other)
- awesome-starred - dandavison/delta - A syntax-highlighting pager for git, diff, and grep output (rust)
- my-awesome - dandavison/delta - themes,delta,diff,git,git-delta,pager,rust,syntax-highlighter pushed_at:2025-01 star:25.2k fork:0.4k A syntax-highlighting pager for git, diff, grep, and blame output (Rust)
README
## Get Started
[Install it](https://dandavison.github.io/delta/installation.html) (the package is called "git-delta" in most package managers, but the executable is just `delta`) and add this to your `~/.gitconfig`:
```gitconfig
[core]
pager = delta[interactive]
diffFilter = delta --color-only[delta]
navigate = true # use n and N to move between diff sections
dark = true # or light = true, or omit for auto-detection[merge]
conflictstyle = zdiff3
```Or run:
```sh
git config --global core.pager delta
git config --global interactive.diffFilter 'delta --color-only'
git config --global delta.navigate true
git config --global merge.conflictStyle zdiff3
```Delta has many features and is very customizable; please see `delta -h` (short help) or `delta --help` (full manual), or the [online user manual](https://dandavison.github.io/delta/).
## Features
- Language syntax highlighting with the same syntax-highlighting themes as [bat](https://github.com/sharkdp/bat#readme)
- Word-level diff highlighting using a Levenshtein edit inference algorithm
- Side-by-side view with line-wrapping
- Line numbering
- `n` and `N` keybindings to move between files in large diffs, and between diffs in `log -p` views (`--navigate`)
- Improved merge conflict display
- Improved `git blame` display (syntax highlighting; `--hyperlinks` formats commits as links to hosting provider etc. Supported hosting providers are: GitHub, GitLab, SourceHut, Codeberg)
- 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` and `diff-so-fancy` emulation modes
- Commit hashes can be formatted as terminal [hyperlinks](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda) to the hosting provider 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.
- Style strings (foreground color, background color, font attributes) are supported for >20 stylable elements, using the same color/style language as git
- Handles traditional unified diff output in addition to git output
- Automatic detection of light/dark terminal background## A syntax-highlighting pager for git, diff, and grep output
Code evolves, and we all spend time studying diffs. Delta aims to make this both efficient and enjoyable: it allows you to make extensive changes to the layout and styling of diffs, as well as allowing you to stay arbitrarily close to the default git/diff output.
delta with
line-numbers
activated
delta with
side-by-side
andline-numbers
activated
Here's what `git show` can look like with git configured to use delta:
"Dracula" theme
"GitHub" theme
### Syntax-highlighting themes
**All the syntax-highlighting color themes that are available with [bat](https://github.com/sharkdp/bat/) are available with delta:**
delta --show-syntax-themes --dark
delta --show-syntax-themes --light
### Side-by-side view
[[User manual](https://dandavison.github.io/delta/side-by-side-view.html)]
```gitconfig
[delta]
side-by-side = true
```By default, side-by-side view has line-numbers activated, and has syntax highlighting in both the left and right panels: [[config](#side-by-side-view-1)]
Side-by-side view wraps long lines automatically:
### Line numbers
[[User manual](https://dandavison.github.io/delta/line-numbers.html)]
```gitconfig
[delta]
line-numbers = true
```### Merge conflicts
[[User manual](https://dandavison.github.io/delta/merge-conflicts.html)]
### Git blame
[[User manual](https://dandavison.github.io/delta/git-blame.html)]
### Ripgrep, git grep
[[User manual](https://dandavison.github.io/delta/grep.html)]
### Installation and usage
Please see the [user manual](https://dandavison.github.io/delta/) and `delta --help`.
### Maintainers
- [@dandavison](https://github.com/dandavison)
- [@th1000s](https://github.com/th1000s)