зеркало из https://github.com/microsoft/git.git
Provide a build time default-pager setting
Provide a DEFAULT_PAGER knob so packagers can set the fallback pager to something appropriate during the build. Examples: On (old) solaris systems, /usr/bin/less (typically the first less found) doesn't understand the default arguments (FXRS), which forces users to alter their environment (PATH, GIT_PAGER, LESS, etc) or have a local or global gitconfig before paging works as expected. On Debian systems, by policy packages must fall back to the 'pager' command, so that changing the target of the /usr/bin/pager symlink changes the default pager for all packages at once. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Ben Walton <bwalton@artsci.utoronto.ca> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
8f4b576ad1
Коммит
a3d023d0a3
11
Makefile
11
Makefile
|
@ -201,6 +201,10 @@ all::
|
|||
#
|
||||
# Define NO_REGEX if you have no or inferior regex support in your C library.
|
||||
#
|
||||
# Define DEFAULT_PAGER to a sensible pager command (defaults to "less") if
|
||||
# you want to use something different. The value will be interpreted by the
|
||||
# shell at runtime when it is used.
|
||||
#
|
||||
# Define DEFAULT_EDITOR to a sensible editor command (defaults to "vi") if you
|
||||
# want to use something different. The value will be interpreted by the shell
|
||||
# if necessary when it is used. Examples:
|
||||
|
@ -1380,6 +1384,13 @@ DEFAULT_EDITOR_CQ_SQ = $(subst ','\'',$(DEFAULT_EDITOR_CQ))
|
|||
BASIC_CFLAGS += -DDEFAULT_EDITOR='$(DEFAULT_EDITOR_CQ_SQ)'
|
||||
endif
|
||||
|
||||
ifdef DEFAULT_PAGER
|
||||
DEFAULT_PAGER_CQ = "$(subst ",\",$(subst \,\\,$(DEFAULT_PAGER)))"
|
||||
DEFAULT_PAGER_CQ_SQ = $(subst ','\'',$(DEFAULT_PAGER_CQ))
|
||||
|
||||
BASIC_CFLAGS += -DDEFAULT_PAGER='$(DEFAULT_PAGER_CQ_SQ)'
|
||||
endif
|
||||
|
||||
ALL_CFLAGS += $(BASIC_CFLAGS)
|
||||
ALL_LDFLAGS += $(BASIC_LDFLAGS)
|
||||
|
||||
|
|
6
pager.c
6
pager.c
|
@ -2,6 +2,10 @@
|
|||
#include "run-command.h"
|
||||
#include "sigchain.h"
|
||||
|
||||
#ifndef DEFAULT_PAGER
|
||||
#define DEFAULT_PAGER "less"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* This is split up from the rest of git so that we can do
|
||||
* something different on Windows.
|
||||
|
@ -60,7 +64,7 @@ const char *git_pager(void)
|
|||
if (!pager)
|
||||
pager = getenv("PAGER");
|
||||
if (!pager)
|
||||
pager = "less";
|
||||
pager = DEFAULT_PAGER;
|
||||
else if (!*pager || !strcmp(pager, "cat"))
|
||||
pager = NULL;
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче