diff options
author | Brian Gernhardt <benji@silverinsanity.com> | 2007-07-03 14:18:11 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-07-04 10:09:32 -0700 |
commit | 54adf3706c5c799584c1bcdcac96fb3285b97de4 (patch) | |
tree | c53c89a333064d050f77ad622f62891e77e1483b | |
parent | 41c7c1bd6f151f351365451acbf9fade6eb6044c (diff) | |
download | git-54adf3706c5c799584c1bcdcac96fb3285b97de4.tar.gz git-54adf3706c5c799584c1bcdcac96fb3285b97de4.tar.xz |
Add core.pager config variable.
This adds a configuration variable that performs the same function as,
but is overridden by, GIT_PAGER.
Signed-off-by: Brian Gernhardt <benji@silverinsanity.com>
Acked-by: Johannes E. Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Documentation/config.txt | 4 | ||||
-rw-r--r-- | cache.h | 1 | ||||
-rw-r--r-- | config.c | 5 | ||||
-rw-r--r-- | environment.c | 1 | ||||
-rw-r--r-- | pager.c | 2 |
5 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt index 1d96adf30..66a55b051 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -281,6 +281,10 @@ core.excludesfile:: of files which are not meant to be tracked. See gitlink:gitignore[5]. +core.pager:: + The command that git will use to paginate output. Can be overridden + with the `GIT_PAGER` environment variable. + alias.*:: Command aliases for the gitlink:git[1] command wrapper - e.g. after defining "alias.last = cat-file commit HEAD", the invocation @@ -546,6 +546,7 @@ extern int write_or_whine_pipe(int fd, const void *buf, size_t count, const char /* pager.c */ extern void setup_pager(void); +extern char *pager_program; extern int pager_in_use; extern int pager_use_color; @@ -387,6 +387,11 @@ int git_default_config(const char *var, const char *value) return 0; } + if (!strcmp(var, "core.pager")) { + pager_program = xstrdup(value); + return 0; + } + /* Add other config variables here and to Documentation/config.txt. */ return 0; } diff --git a/environment.c b/environment.c index 1c2773f1b..f83fb9e44 100644 --- a/environment.c +++ b/environment.c @@ -30,6 +30,7 @@ int core_compression_seen; size_t packed_git_window_size = DEFAULT_PACKED_GIT_WINDOW_SIZE; size_t packed_git_limit = DEFAULT_PACKED_GIT_LIMIT; size_t delta_base_cache_limit = 16 * 1024 * 1024; +char *pager_program; int pager_in_use; int pager_use_color = 1; int auto_crlf = 0; /* 1: both ways, -1: only when adding git objects */ @@ -32,6 +32,8 @@ void setup_pager(void) if (!isatty(1)) return; if (!pager) + pager = pager_program; + if (!pager) pager = getenv("PAGER"); if (!pager) pager = "less"; |