# [PATCH] Add '-P' as a synonym for '--no-pager' in the git command

3 messages from 2011-12-15 to 2011-12-16. Participants: Joe Ratterman, Junio C Hamano, Matthieu Moy.
Thread: https://gitlist.dev/t/29171

## Joe Ratterman, 2011-12-15 20:55

Subject: [PATCH] Add '-P' as a synonym for '--no-pager' in the git command
Message-ID: <1323982541-18995-1-git-send-email-jratt0@gmail.com>
URL: https://gitlist.dev/e/1323982541-18995-1-git-send-email-jratt0%40gmail.com

```
  Also, add both -P|--no-pager to the existing -p|--paginate in bash
  completion.

Signed-off-by: Joe Ratterman <jratt0@gmail.com>
---
 Documentation/git.txt                  |    3 ++-
 contrib/completion/git-completion.bash |    2 +-
 git.c                                  |    4 ++--
 t/t7006-pager.sh                       |    8 ++++++++
 4 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/Documentation/git.txt b/Documentation/git.txt
index e869032..c7f8445 100644
--- a/Documentation/git.txt
+++ b/Documentation/git.txt
@@ -10,7 +10,7 @@ SYNOPSIS
 --------
 [verse]
 'git' [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
-    [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
+    [-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare]
     [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
     [-c <name>=<value>]
     [--help] <command> [<args>]
@@ -329,6 +329,7 @@ help ...`.
 	configuration options (see the "Configuration Mechanism" section
 	below).
 
+-P::
 --no-pager::
 	Do not pipe git output into a pager.
 
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index cc1bdf9..8b9ea1b 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -2640,7 +2640,7 @@ _git ()
 		case "$i" in
 		--git-dir=*) __git_dir="${i#--git-dir=}" ;;
 		--bare)      __git_dir="." ;;
-		--version|-p|--paginate) ;;
+		--version|-p|--paginate|-P|--no-pager) ;;
 		--help) command="help"; break ;;
 		*) command="$i"; break ;;
 		esac
diff --git a/git.c b/git.c
index 8e34903..baa1613 100644
--- a/git.c
+++ b/git.c
@@ -7,7 +7,7 @@
 
 const char git_usage_string[] =
 	"git [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
-	"           [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]\n"
+	"           [-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare]\n"
 	"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
 	"           [-c name=value] [--help]\n"
 	"           <command> [<args>]";
@@ -103,7 +103,7 @@ static int handle_options(const char ***argv, int *argc, int *envchanged)
 			exit(0);
 		} else if (!strcmp(cmd, "-p") || !strcmp(cmd, "--paginate")) {
 			use_pager = 1;
-		} else if (!strcmp(cmd, "--no-pager")) {
+		} else if (!strcmp(cmd, "-P") || !strcmp(cmd, "--no-pager")) {
 			use_pager = 0;
 			if (envchanged)
 				*envchanged = 1;
diff --git a/t/t7006-pager.sh b/t/t7006-pager.sh
index 320e1d1..783915e 100755
--- a/t/t7006-pager.sh
+++ b/t/t7006-pager.sh
@@ -84,6 +84,14 @@ test_expect_success 'no pager even with --paginate when stdout is a pipe' '
 	! test -e paginated.out
 '
 
+test_expect_success TTY 'no pager with -P' '
+	rm -f paginated.out ||
+	cleanup_fail &&
+
+	test_terminal git -P log &&
+	! test -e paginated.out
+'
+
 test_expect_success TTY 'no pager with --no-pager' '
 	rm -f paginated.out ||
 	cleanup_fail &&
-- 
1.7.7.1

```

## Junio C Hamano, 2011-12-15 21:41

Subject: Re: [PATCH] Add '-P' as a synonym for '--no-pager' in the git command
Message-ID: <7vhb11ms1a.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vhb11ms1a.fsf%40alter.siamese.dyndns.org
In-Reply-To: <1323982541-18995-1-git-send-email-jratt0@gmail.com>

```
Sorry, but why was I listed on the To: line?

I do not recall there was a list concensus that this is a must-have or
even good-to-have, and I am not personally interested in this. I hesitate
to accept a patch that lets a feature without clear advantage squat on a
short-and-sweet single-letter option, generally speaking.

```

## Matthieu Moy, 2011-12-16 09:30

Subject: Re: [PATCH] Add '-P' as a synonym for '--no-pager' in the git command
Message-ID: <vpqliqc50f2.fsf@bauges.imag.fr>
URL: https://gitlist.dev/e/vpqliqc50f2.fsf%40bauges.imag.fr
In-Reply-To: <1323982541-18995-1-git-send-email-jratt0@gmail.com>

```
Joe Ratterman <jratt0@gmail.com> writes:

>   Also, add both -P|--no-pager to the existing -p|--paginate in bash
>   completion.

A good commit message should always answer the question "why?". In this
case, I really don't see why this is needed. If you don't like Git's
auto-paginate feature, turn it off with core.pager or pager.<cmd>. If
you like it, you very rarely need --no-pager (IIRC, I'm the one who
introduced --no-pager, and I don't think I've ever used it outside a
script).

So, I'd rather keep -P free in case we need it later for something
really useful (or possibly a better commit message).

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/

```
