git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] pager: config variable pager.program

From
MLMatthias Lederhofer <matled@gmx.net>
Date
Jul 31, 2006, 12:14 UTC
Message-ID
<E1G7WfC-000728-9j@moooo.ath.cx>
In-Reply-To
<7v8xmabo37.fsf@assigned-by-dhcp.cox.net>
Signed-off-by: Matthias Lederhofer <matled@gmx.net>
---
Junio C Hamano <junkio@cox.net> wrote:
> I am not enthused about any configuration stored in .git/config
> to override the environment variables.  Files are to store
> reasonable default, and command line flags and environments are
> to override them, but this patch does it the other way around.
You're right, this patch uses $GIT_PAGER.  I don't think pager.program
does make much sense with this (expect someone does not want to export
$PAGER/$GIT_PAGER), should it be introduced anyway (I don't need
it)?
---
 Documentation/git.txt |    3 +++
 pager.c               |    5 ++++-
 2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/Documentation/git.txt b/Documentation/git.txt
index 7310a2b..d243883 100644
--- a/Documentation/git.txt
+++ b/Documentation/git.txt
@@ -627,6 +627,9 @@ git Diffs
 
 other
 ~~~~~
+'GIT_PAGER'::
+	This environment variable overrides `$PAGER`.
+
 'GIT_TRACE'::
 	If this variable is set git will print `trace:` messages on
 	stderr telling about alias expansion, built-in command
diff --git a/pager.c b/pager.c
index 280f57f..ab9be5d 100644
--- a/pager.c
+++ b/pager.c
@@ -15,10 +15,13 @@ void setup_pager(void)
 {
 	pid_t pid;
 	int fd[2];
-	const char *pager = getenv("PAGER");
+	char *pager;
 
 	if (!isatty(1))
 		return;
+	pager = getenv("GIT_PAGER");
+	if (!pager)
+		pager = getenv("PAGER");
 	if (!pager)
 		pager = "less";
 	else if (!*pager || !strcmp(pager, "cat"))
-- 
1.4.2.rc2.g91b7
Previous: Junio C HamanoNext: Johannes Schindelin
Message 3 of 5 in “pager: config variable pager.program”
  1. pager: config variable pager.programMatthias Lederhofer, Jul 29, 2006
  2. Junio C HamanoJul 31, 2006
  3. pager: config variable pager.programMatthias Lederhofer, Jul 31, 2006
  4. Johannes SchindelinJul 31, 2006
  5. pager: environment variable GIT_PAGER to override PAGERMatthias Lederhofer, Jul 31, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.