GIT_PAGER environment variable must either not be set at all, or set to the value
delta (you can add argument here if you want; this env var plays the same role as the
core.pager config entry).
Unfortunately, delta does not currently honor all relevant git environment variables.
For example, it does not honor
This is because delta uses libgit2 to read git config, whereas git uses its own code.
(libgit2 is a project run by volunteers; if this affects you, please do consider contributing the required features to libgit2!)
A pager is a program that accepts many lines of text as input, and displays them one screenful at a time.
The standard pager is less, and this is what delta uses by default (it's also what
It is very important that you are using a recent version of less. In particular, on Windows, the installed version of less is often broken and it is usually necessary to install it yourself or use the version of less that is installed with git on Windows.
The command line flags passed to
lessare important, and there are some environment variables that affect these (see below). By default, delta will try to ensure that they are sensible.
When delta is displaying lengthy output, anything you do with the keyboard or mouse is actually received by less, and it is worth looking at less documentation (
man lessor online) to discover what you can do.
The exact command that
delta uses to start its pager is taken from one of the following environment variables (in this order):
If none of these is set, delta uses
less -R, and you should always include
-R if you are setting these environment variables yourself.
In addition to those
*PAGER environment variables, the behavior of
less is also affected by the
LESS environment variable (see
man less or online documentation). This env var can contain command line options and/or interactive less-commands (prefixed by a leading
+ sign; these are executed every time right after less is launched).
In addition to
PAGER, delta currently also consults
$BAT_PAGER (with priority between the two).
However, this is deprecated: please use
bat environment variables are used by delta, and delta does not use
bat when it is running (it does use some code from the excellent
bat project, but users don't need to be aware of this).
To temporarily activate and inactivate delta features, you can use
export DELTA_FEATURES='+side-by-side my-feature'
+ means "add these features to those configured in git config".)
DELTA_PAGER env var is described above.