Git Mailing List Archive mirror
 help / color / mirror / Atom feed
* .gitconfig: -c core.pager='less -+F -+X' status
@ 2023-03-21 14:24 Alejandro Colomar
  2023-03-21 18:42 ` Jeff King
  0 siblings, 1 reply; 3+ messages in thread
From: Alejandro Colomar @ 2023-03-21 14:24 UTC (permalink / raw
  To: Git Mailing List


[-- Attachment #1.1: Type: text/plain, Size: 1344 bytes --]

Hi,

I wrote recently some aliases to not clutter my screen when I want to
check something quick:

$ head -n4 ~/.gitconfig 
[alias]
	df = -c core.pager='less -+F -+X' diff
	sw = -c core.pager='less -+F -+X' show
	st = -c core.pager='less -+F -+X' status

Now, `git df` and `git sw` work as expected: they open a less window,
and it's later closed with `q`, with no traces in my screen except for
the command itself.  

However, `git st` doesn't seem to work.  It prints everything to screen,
and then exits.

You can reproduce it on the command line too:

git -c core.pager='less -+F -+X' diff    # OK
git -c core.pager='less -+F -+X' show    # OK
git -c core.pager='less -+F -+X' status  # Not OK

Cheers,
Alex

P.S.:  While sometimes I want to check quick something without
cluttering my screen, I don't recommend anyone reading this to run these
aliases as a norm.  I prefer using the ones that leave traces on the
screen, since that way it's simple to recover from rebase accidents,
which at least to me, happen rather often.  This is only for cases where
I have something important on the screen which I don't want to hide
(previously, I would open a new terminal to check something quick on
git).

-- 
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: .gitconfig: -c core.pager='less -+F -+X' status
  2023-03-21 14:24 .gitconfig: -c core.pager='less -+F -+X' status Alejandro Colomar
@ 2023-03-21 18:42 ` Jeff King
  2023-03-21 19:22   ` Alejandro Colomar
  0 siblings, 1 reply; 3+ messages in thread
From: Jeff King @ 2023-03-21 18:42 UTC (permalink / raw
  To: Alejandro Colomar; +Cc: Git Mailing List

On Tue, Mar 21, 2023 at 03:24:53PM +0100, Alejandro Colomar wrote:

> Hi,
> 
> I wrote recently some aliases to not clutter my screen when I want to
> check something quick:
> 
> $ head -n4 ~/.gitconfig 
> [alias]
> 	df = -c core.pager='less -+F -+X' diff
> 	sw = -c core.pager='less -+F -+X' show
> 	st = -c core.pager='less -+F -+X' status
> 
> Now, `git df` and `git sw` work as expected: they open a less window,
> and it's later closed with `q`, with no traces in my screen except for
> the command itself.  
> 
> However, `git st` doesn't seem to work.  It prints everything to screen,
> and then exits.

git-status doesn't invoke the pager by default:

  $ git -c core.pager='echo foo' log
  foo

  $ git -c core.pager='echo foo' status
  On branch [...etc]

You can configure it to do so:

  git config --global pager.status true

Or if you just want it to happen in your alias, try:

  [alias]
      st = -p -c core.pager='less -+F -+X' status

-Peff

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: .gitconfig: -c core.pager='less -+F -+X' status
  2023-03-21 18:42 ` Jeff King
@ 2023-03-21 19:22   ` Alejandro Colomar
  0 siblings, 0 replies; 3+ messages in thread
From: Alejandro Colomar @ 2023-03-21 19:22 UTC (permalink / raw
  To: Jeff King; +Cc: Git Mailing List


[-- Attachment #1.1: Type: text/plain, Size: 1463 bytes --]

Hi Jeff,

On 3/21/23 19:42, Jeff King wrote:
> On Tue, Mar 21, 2023 at 03:24:53PM +0100, Alejandro Colomar wrote:
> 
>> Hi,
>>
>> I wrote recently some aliases to not clutter my screen when I want to
>> check something quick:
>>
>> $ head -n4 ~/.gitconfig 
>> [alias]
>> 	df = -c core.pager='less -+F -+X' diff
>> 	sw = -c core.pager='less -+F -+X' show
>> 	st = -c core.pager='less -+F -+X' status
>>
>> Now, `git df` and `git sw` work as expected: they open a less window,
>> and it's later closed with `q`, with no traces in my screen except for
>> the command itself.  
>>
>> However, `git st` doesn't seem to work.  It prints everything to screen,
>> and then exits.
> 
> git-status doesn't invoke the pager by default:

Ahh, sorry, how could I forget something like that =)
Probably some brainfart here between chair and keyboard.

> 
>   $ git -c core.pager='echo foo' log
>   foo
> 
>   $ git -c core.pager='echo foo' status
>   On branch [...etc]
> 
> You can configure it to do so:
> 
>   git config --global pager.status true

Hmm, I like this.  When status grows hundreds of lines, it's nice if
it only shows the first screen by default.

Thanks!

Alex

> 
> Or if you just want it to happen in your alias, try:
> 
>   [alias]
>       st = -p -c core.pager='less -+F -+X' status

> 
> -Peff

-- 
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-03-21 19:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-21 14:24 .gitconfig: -c core.pager='less -+F -+X' status Alejandro Colomar
2023-03-21 18:42 ` Jeff King
2023-03-21 19:22   ` Alejandro Colomar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).