From: Johannes Sixt Date: Wed, 25 Apr 2018 06:25:21 GMT Subject: Re: [PATCH] git: add -N as a short option for --no-pager Message-ID: <08882cea-5dab-3cc7-33ac-cf938253a34a@kdbg.org> In-Reply-To: Am 25.04.2018 um 02:05 schrieb Junio C Hamano: > Johannes Sixt writes: >> It is not uncommon to request that the output remains visible in >> the terminal. For this, the option --no-pager can be used. But >> it is a bit cumbersome to type, even when command completion is >> available. Provide a short option, -N, to make the option easier >> accessible. >> >> Signed-off-by: Johannes Sixt >> --- > > Heh, I used to append "|cat", which is four keystrokes that is a bit > shorter than " --no-pager", but that is only acceptable when you do > not care about colored output ;-) > > I am not absolutely certain about the choice of a single letter. I > already checked we do not use "git -N cmd" for anything else right > now, so I am certain about the availability, but I am not sure if > capital 'N' is the best choice, when the other side is lowercase 'p' > (and more importantly, the other side 'p' has mneomonic value for > 'pagination', but 'N' merely stands for 'no' and could be negating > anything, not related to pagination). But I agree that a short-hand > would be welcome. I considered -P, but thought that it would better be reserved for something related to "paths". We have --{html,man,info}-path, which would be served better with -[HMI]. That leaves --exec-path, which we would probably abbreviate as -x or -X. So, -P is perhaps not that bad after all. We could also choose +p, for which there is some precedent in other POSIX tools to mean negated -p, but not in git, I think. Implementationwise, it is not that trivial, either, because the section handling options is guarded by a check that the word begins with a dash. Perhaps --no-pager means also "unpaginated" (-u, -U), "linear" (-l, -L), "streamed" (-s, -S). Other ideas, anyone? > >> diff --git a/Documentation/git.txt b/Documentation/git.txt >> index 4767860e72..17b50b0dc6 100644 >> --- a/Documentation/git.txt >> +++ b/Documentation/git.txt >> @@ -11,7 +11,7 @@ SYNOPSIS >> [verse] >> 'git' [--version] [--help] [-C ] [-c =] >> [--exec-path[=]] [--html-path] [--man-path] [--info-path] >> - [-p|--paginate|--no-pager] [--no-replace-objects] [--bare] >> + [-p|--paginate|-N|--no-pager] [--no-replace-objects] [--bare] >> [--git-dir=] [--work-tree=] [--namespace=] >> [--super-prefix=] >> []