A syntax-highlighting pager for git, diff, and grep output
Thanks to the many contributors! Particular highlights are
Thanks to @bash's work, delta now automatically detects whether your terminal has a light/dark background (unless you specify with --light
or --dark
):
@joshtriplett solved the long-standing problem of correctly parsing traditional grep output, e.g. git grep
, grep
, etc. Until now there had been annoying parse ambiguities related to separator characters in file paths. This is particularly valuable for git grep
since it has interesting features such as git grep -W
(see https://github.com/dandavison/delta/issues/769)
@imbrish fixed two important bugs and added the ability to set a default language (e.g. for executable shell scripts with no file name suffix)
atty
crate with std::io::IsTerminal
trait by @nickelc in https://github.com/dandavison/delta/pull/1465
more
or most
by @ippsav in https://github.com/dandavison/delta/pull/1494
ubuntu-latest
by @sitiom in https://github.com/dandavison/delta/pull/1512
corvus
theme by @evilwaveforms in https://github.com/dandavison/delta/pull/1652
Full Changelog: https://github.com/dandavison/delta/compare/0.16.5...0.17.0
This is a follow-up release providing the various binaries that were not released with 0.16.4. It also makes some adjustments to delta's (rip)grep support.
Full Changelog: https://github.com/dandavison/delta/compare/0.16.4...0.16.5
It's 6 months since the last release so this one brings quite a few changes. Thanks very much to all contributors, especially @nickelc for a huge number of contributions, and @wescande for his work on improving whitespace highlighting. With this release delta can now display grep output in (hopefully) exactly the same layout that ripgrep does, but adding syntax highlighting, hyperlinks, and navigation. Use ripgrep --json ... | delta
for that, or set grep-output-type = ripgrep
to get that output style from git grep
etc.
This release does not contain binaries for x86_64-unknown-linux-musl
, i686-unknown-linux-gnu
, arm-unknown-linux-gnueabihf
, or aarch64-unknown-linux-gnu
because the cross-compilation GitHub Actions jobs were broken at the time of release. I'll issue a follow-up release including them when that's fixed.
--show-colors
by @nickelc in https://github.com/dandavison/delta/pull/1315
--show-themes
command by @nickelc in https://github.com/dandavison/delta/pull/1320
git2
to 0.16.1 by @nickelc in https://github.com/dandavison/delta/pull/1323
gruvmax-fang
theme by @MaxFangX in https://github.com/dandavison/delta/pull/1291
clap
to 4.1 by @nickelc in https://github.com/dandavison/delta/pull/1322
git2
types by @nickelc in https://github.com/dandavison/delta/pull/1326
dirs
crate by @nickelc in https://github.com/dandavison/delta/pull/1325
GitRemoteRepo
type directly by @nickelc in https://github.com/dandavison/delta/pull/1328
GitConfig
as reference by @nickelc in https://github.com/dandavison/delta/pull/1336
git_config_entry
module to remote
by @nickelc in https://github.com/dandavison/delta/pull/1337
#[derive(Default)]
/#[default]
by @nickelc in https://github.com/dandavison/delta/pull/1341
GitConfig
constructors for a config file by @nickelc in https://github.com/dandavison/delta/pull/1342
tmux
by @isak102 in https://github.com/dandavison/delta/pull/1402
bitflags
to 2.2 by @nickelc in https://github.com/dandavison/delta/pull/1361
extern crate
statements by @nickelc in https://github.com/dandavison/delta/pull/1345
bytelines
crate by @nickelc in https://github.com/dandavison/delta/pull/1378
error_chain
crate with anyhow
by @nickelc in https://github.com/dandavison/delta/pull/1405
delta
on Windows by @mataha in https://github.com/dandavison/delta/pull/1428
grep-output-type
option: ripgrep or classic by @dandavison in https://github.com/dandavison/delta/pull/1410
Full Changelog: https://github.com/dandavison/delta/compare/0.15.1...0.16.4
Full Changelog: https://github.com/dandavison/delta/compare/0.15.0...0.15.1
Thanks to all contributors for the changes in this release! One particularly exciting contribution is the tweaks to the highlighting algorithm made by @phillipwood in #1244. This is something that has remained more or less the same since delta was first created, but #1244 brings several improvements in the details of exactly which characters are highlighted.
Full Changelog: https://github.com/dandavison/delta/compare/0.14.0...0.15.0
git show
handler if a file extension was parsed by @dandavison in https://github.com/dandavison/delta/pull/1106
git show $commit:$path
output by @dandavison in https://github.com/dandavison/delta/pull/1127
Full Changelog: https://github.com/dandavison/delta/compare/0.13.0...0.14.0
bat
on README by @eloyesp in https://github.com/dandavison/delta/pull/1052
Full Changelog: https://github.com/dandavison/delta/compare/0.12.1...0.13.0
-
in path by @jdpopkin in https://github.com/dandavison/delta/pull/975
Full Changelog: https://github.com/dandavison/delta/compare/0.12.0...0.12.1
There's quite a lot in this release, with contributions from 8 different people.
Firstly a breaking change: some deprecated options are no longer supported: in particular plus-color
and minus-color
. See https://github.com/dandavison/delta/pull/914. A description of this change and what you need to do if you're affected by it is below.
Secondly, improvements, including:
delta -h
. Delta is the proud possessor of 100 command-line options, so I think this is going to be helpful.Finally some bug fixes, including
The options affected here have been deprecated for a couple of years; I hope this doesn't cause you any trouble. Here are the details:
The most common case is that you have something like this in your ~/.gitconfig
:
[delta]
plus-color = my_plus_color
minus-color = my_minus_color
Please change that to
[delta]
plus-style = syntax my_plus_color
minus-style = normal my_minus_color
Here's the list of deprecated options with a summary of how to update them:
minus-color Deprecated: use `minus-style = normal my_background_color`
plus-color Deprecated: Use `plus-style = syntax my_background_color`
minus-emph-color Deprecated: use `minus-emph-style = normal my_background_color`
plus-emph-color Deprecated: Use `plus-emph-style = syntax my_background_color`
highlight-removed Deprecated: use `minus-style = syntax my_background_color`
commit-color Deprecated: use `commit-style = my_foreground_color
commit-decoration-style = my_foreground_color`
file-color Deprecated: use `file-style = my_foreground_color
file-decoration-style = my_foreground_color`
hunk-style Deprecated: synonym of `hunk-header-decoration-style`
hunk-color Deprecated: use `hunk-header-style = my_foreground_color
hunk-header-decoration-style = my_foreground_color`
theme Deprecated: use `syntax-theme`
For full documentation, please see delta --help
and https://dandavison.github.io/delta/configuration.html.
Full Changelog: https://github.com/dandavison/delta/compare/0.11.3...0.12.0
--word-diff
and --color-words
(#829). Note that line-numbers
and side-by-side
will be ignored if delta detects that the input was generated by git --word-diff / --color-words
.DELTA_FEATURES
can now be used to add to features specified in ~/.gitconfig. Use a +
prefix to do this: an example is DELTA_FEATURES=+side-by-side
which will activate side-by-side
, in addition to your usual features.less
history file in a better location on Windows. Thanks @rashil2000 for this work!Full Changelog: https://github.com/dandavison/delta/compare/0.11.2...0.11.3