A syntax-highlighting pager for git, diff, grep, and blame output
MIT License
Bot releases are visible (Hide)
Published by dandavison almost 3 years ago
This release fixes a regression introduced in 0.9.0 affecting the use of git add -p
when submodules are present. See https://github.com/dandavison/delta/issues/755
git add -p
by @dandavison in https://github.com/dandavison/delta/pull/756
Full Changelog: https://github.com/dandavison/delta/compare/0.9.1...0.9.2
Published by github-actions[bot] almost 3 years ago
This is a followup to release 0.9.0 fixing a bug in the --help
text emitted by the 0.9.0 binary (see 3aab5d19569fa52ace2d7e6d196a1256990c4e20).
0.9.0 was a major release adding line-wrapping to side-by-side mode: 0.9.0 release notes.
Published by github-actions[bot] almost 3 years ago
With this release, long lines are wrapped in side-by-side mode, thanks to a far-reaching series of contributions by @th1000s (see https://github.com/dandavison/delta/pull/515). No special customization is needed, but sophisticated control over the details is available: see --wrap-max-lines
, --wrap-left-symbol
, --wrap-right-symbol
, --wrap-right-percent
, --wrap-right-prefix-symbol
, --inline-hint-style
.
In the image below, the long deleted line in the left panel overflows by a small amount, and the wrapped content is right-aligned in the next line. In contrast, the long replacement line in the right panel overflows by almost an entire line, and so the wrapped content is left aligned in the next line. The arrow markers and ellipsis explain when and how text has been wrapped.
git@
for hyperlinks by @spaarmann in https://github.com/dandavison/delta/pull/668
git diff
mode by @dandavison in https://github.com/dandavison/delta/pull/695
insteadOf
replacements in git remote URLs by @dandavison in https://github.com/dandavison/delta/pull/694
Full Changelog: https://github.com/dandavison/delta/compare/0.8.3...0.9.0
Published by dandavison over 3 years ago
This release fixes a security vulnerability (CVE-2021-36376) on Windows. Please update if you are using Windows.
Published by dandavison over 3 years ago
This is mainly a bug fix release: filenames containing spaces were causing crashes due to a regression in 0.8.0. It also includes a fix for the delta file_a file_b
"diff mode" usage style, and an improvement for the diff-highlight / diff-so-fancy emulation modes.
Published by dandavison over 3 years ago
relative-paths
causes all file paths to be printed relative to the current directory so that they can be easily opened in a text editor or used in a shell command. Using hunk-header-style = file line-number syntax
will emit the line number with the file path and thus should allow your editor to open at the correct line. For example, in the VS Code integrated terminal this means that with no further configuration every file path in git output can be opened with ctrl-click/cmd-click, and opening at a specific line works. Use diff-stat-align-width
to control horizontal alignment of diff stat sections, although this may be replaced by a better solution in the future. https://github.com/dandavison/delta/issues/552
commit-regex
allows delta to work nicely with custom git log
formats (https://github.com/dandavison/delta/issues/174)git -c delta.foo=bar ...
in latest git version https://github.com/dandavison/delta/pull/573
delta file_A file_B
now invokes git diff
, instead of diff -u
24-bit-color
is deprecated; use true-color
instead. #567
Published by dandavison over 3 years ago
This release brings two improvements due to delta contributors:
@cben proposed a new way for delta to seed less
with the regexp that is used to implement navigation, which is implemented in this release. This makes it possible to keep navigate=true
in delta config all the time, without the ill effects that it had before (#237)
@clnoll contributed a new option delta --show-themes
, which demos the delta color themes that are available locally. n
and N
step forwards and backwards through the themes. (https://github.com/dandavison/delta/pull/550)
@clnoll has also contributed new themes to the growing collection (please consider submitting your own color config as a theme!)
[closed] π Setting $PAGER to use delta results in an infinite loop #529
[closed] π --navigate
breaks git log --oneline
and empty git diff
#237
Published by dandavison over 3 years ago
To be superseded by 0.7.1
Published by dandavison over 3 years ago
This release brings a new and more convenient way to change delta options in a one-off git command: using git -c
. Here's an example:
git -c delta.line-numbers=false -c delta.max-line-distance=0.8 show
Thanks to @wyuenho for pointing out that this should be supported. See https://github.com/dandavison/delta/issues/493 and https://github.com/dandavison/delta/pull/495.
One note: while quotes around color hex codes are required in gitconfig, they can be omitted in the git -c
context
git -c delta.plus-style='syntax "#aa0000"' show
git -c delta.plus-style='syntax #aa0000' show
Published by dandavison almost 4 years ago
This release is primarily to make delta build on Apple Silicon/ARM for Homebrew (#487). It also fixes an inconsistency whereby the line number was not displayed in the hunk header if line-numbers
was active (https://github.com/dandavison/delta/pull/473#issuecomment-752900940).
Published by dandavison almost 4 years ago
This release introduces a cosmetic change to delta output: the line number (when full line-numbers
mode is not active) is now displayed in the hunk header line, along with the hunk header code fragment, and optionally a file path. Thanks to @infokiller and @torarnv for suggesting these changes. For example, it might now look like this, if you use hunk-header-style = file line-number syntax
:
Use hunk-header-style
to configure it:
--hunk-header-style <hunk-header-style>
Style (foreground, background, attributes) for the hunk-header. See STYLES section. Special attributes
'file' and 'line-number' can be used to include the file path, and number of first hunk line, in the hunk
header. If included in the hunk header, 'file' and 'line-number' are styled according to 'file-style' and
'hunk-header-decoration-style' respectively. The style 'omit' can be used to remove the hunk header section
from the output [default: line-number syntax]
If you are displaying the file path in the hunk header, you may want to get rid of the main file line. Use file-style = <my-file-color> omit
to set the color of the file in the hunk header while deactivating the main file section.
The release also fixes a bug that was introduced in the last release when using delta as a unified diff replacement, i.e. delta file_a file_b
. (#463).
Published by dandavison almost 4 years ago
Many thanks to @MarcoIeni for creating CI and CD workflows for Delta in GitHub actions, and to @ulwlu for continued work on color-only
/ git add -p
support.
max_buffered_lines
as configurable option #427
--color-only
enabled #405
Published by dandavison about 4 years ago
This release mostly fixes bugs in git add -p
behavior, adds test coverage, and clarifies the code involved. Thanks very much @ryuta69 who did all this work.
In addition, a new environment variable is supported: DELTA_PAGER
. If set, this takes precedence over BAT_PAGER
. See --paging
in delta --help
.
Published by dandavison about 4 years ago
A few bug fixes and a couple of minor features (mac-line-length
(#154) and the ability to hide all line numbers (#292)).
git diff color-moved
#280
Published by dandavison about 4 years ago
This release fixes a few bugs. In particular, it makes it possible to use git add -p
with line numbers activated. If you also have side-by-side
activated then that will not be used in git add -p
(it's impossible) but it will now not cause an error either. Thanks very much to @yoichi for analyzing and fixing the problems with git add -p
.
Published by dandavison about 4 years ago
The main new feature in this release is support for git diff --color-moved
: see #72. This makes Git's native moved-line detection algorithms and styling options available when using Delta. Delta supports this automatically, without any configuration change, but see the new option inspect-raw-lines
in case you need to turn it off.
The other new feature is that Delta can now cause files and commit hashes to be rendered as hyperlinks in your terminal emulator: However, this will not be available to you without, at the minimum, installing a patched version of less
, because support for the hyperlink spec has only partially spread through the terminal application ecosystem. See #257 and the delta --help
text for details.
Finally, thanks to @ryuta69 for the fix for #264.
--side-by-side
#251
Published by dandavison over 4 years ago
This release adds a side-by-side diff view: delta -s
or delta --side-by-side
. By default, side-by-side view has line-numbers activated, and has syntax highlighting in both the left and right panels.
The release also fixes bug #238 in which the line number display alignment was broken for line numbers greater than 9999.
Published by dandavison over 4 years ago
This is a large release, introducing major changes to delta configuration as well as new features and bug fixes. It involved a major overhaul of the code base. Many thanks to everyone who submitted issues, PRs, and helped with testing and feedback, in particular @0xC0FFEE, @boris-petrov, @clnoll, @da-x, @gibfahn, @mk12, @phillipwood, @waldyrious.
The highlights are:
To configure delta's appearance, you now use "styles" instead of background color names. A style is a string like red bold ul "#ffeeee"
that specifies foreground color, background color, and attributes. See https://github.com/dandavison/delta#choosing-colors-styles.
Delta now reads configuration from a [delta]
section in git config, and this is the recommended way to configure delta. See https://github.com/dandavison/delta#configuration
Delta now has a line numbers feature, thanks to @clnoll. See https://github.com/dandavison/delta/pull/190, https://github.com/dandavison/delta/pull/219
Delta now has --diff-highlight
and --diff-so-fancy
emulation modes (thanks @waldyrious for much testing)
60 files changed, 9247 insertions(+), 2360 deletions(-)
less
messes up ruler #61
less
#186
--color-only
is used, colors don't extend to the whole line #136
--no-init
to less when BAT_PAGER
is explicitly set #88
Published by dandavison over 4 years ago