From: Dragan Simic <dsimic@manjaro.org>
To: Christoph Anton Mitterer <calestyo@scientia.org>
Cc: git@vger.kernel.org
Subject: Re: why does git set X in LESS env var?
Date: Fri, 13 Oct 2023 00:36:33 +0200 [thread overview]
Message-ID: <60f1922b12a6ef304ffa36c334348e34@manjaro.org> (raw)
In-Reply-To: <c6cd3133573d5ade6d02b5da1051853a4b3885e1.camel@scientia.org>
On 2023-10-12 23:48, Christoph Anton Mitterer wrote:
> On Thu, 2023-10-12 at 23:15 +0200, Dragan Simic wrote:
>>
>> Ah, I can finally see what are you talking about... Thank you very
>> much
>> for all the testing you've performed and for supplying this screen
>> recording! I can confirm that my environment is also affected, but
>> for
>> some reason I haven't observed it this way before.
>
> Well... perhaps because it's not really "easy" to spot unless one
> carefully reads through the lines (which I guess, one does not that
> often in the terminal "history").
>
> Have a look at my ticket at less, especially:
> https://github.com/gwsw/less/issues/445#issuecomment-1758887183
Great, thanks, it's full of very useful information.
> Where it was confirmed that the issue I describe might happen (and I
> guess is non-fixable?
>
> The whole issue also contains an explanation on why scrolling doesn't
> work when -X is used (but --mouse is not) on VTE terminals (and maybe
> others, though not xterm).
> And it's basically not "fixable" but simply "by design".
It seems that "--redraw-on-quit" is a possible candidate for replacing
"-X" in the set of default options for less(1), and also in other CLI
utilities, but I still need to test it in detail.
>> Huh, that's really worrisome and I'm willing to help you with
>> debugging
>> and fixing this issue. Please, let me perform some debugging and
>> digging around, and I'll come back to you with some further insights,
>
> Well, my assumption (though I'm really not a terminal expert) would be
> that it's not fixable... because less would somehow make sure that
> everything it prints (in the alt screen buffer) is properly
> concatenated in the the regular one.
I did some work on terminal emulators, but I'm also not very much of an
expert when it comes to terminal emulators.
> less upstream made some suggestions:
> https://github.com/gwsw/less/issues/445#issuecomment-1759986293
>
> One would be to change the terminfo entry, which I guess is not really
> feasible as a general solution.
>
> The other would be less’ --redraw-on-quit option.
I agree that the latter seems like a viable solution, but as I already
wrote above, I need to test it first, together with doing some digging
through the less(1) source code.
> Maybe that would be an even better solution for git?
> AFAICS, we could have -F, the VTE mouse scrolling out of the box, plus
> (via that option) the final screen buffer of less printed when exiting.
Exactly, but still needs testing and a detailed insight.
> Would give some context (what one did in the pager, where one was) on
> the regular screen buffer, but (presumably) avoid that mess up... and
> perhaps even prevent unneeded pages of output from the pager, if one
> scrolled down a lot, which maybe aren't even needed?
Yes, it seems to tick all the boxes.
> (Also note, that less` upstream calls `-X` "a risky flag" ;-) )
In general, "-X" seems to be more of a bandaid option.
>> Those people, just as anyone else, can use $PAGER or $GIT_PAGER to
>> configure the pagination the way they like it. In the end, that's
>> also
>> what I do in my environment.
>
> Sure... all I said, that (IMO) in the case of `-X` it's not like with
> `-R` but rater like with `-S`... i.e. neither mode has more right to be
> the default than the other.
next prev parent reply other threads:[~2023-10-12 22:36 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-11 22:19 why does git set X in LESS env var? Christoph Anton Mitterer
2023-10-11 22:23 ` Junio C Hamano
2023-10-11 22:26 ` Christoph Anton Mitterer
2023-10-11 22:51 ` Dragan Simic
2023-10-11 23:16 ` Christoph Anton Mitterer
2023-10-11 23:29 ` Dragan Simic
2023-10-11 23:43 ` Christoph Anton Mitterer
2023-10-12 0:06 ` Dragan Simic
2023-10-12 0:22 ` Christoph Anton Mitterer
2023-10-12 0:31 ` Dragan Simic
2023-10-12 1:39 ` Christoph Anton Mitterer
2023-10-12 5:46 ` Dragan Simic
2023-10-12 20:23 ` Christoph Anton Mitterer
2023-10-12 21:15 ` Dragan Simic
2023-10-12 21:48 ` Christoph Anton Mitterer
2023-10-12 22:36 ` Dragan Simic [this message]
2023-10-12 23:06 ` Christoph Anton Mitterer
2023-10-13 4:43 ` Dragan Simic
2023-10-13 13:45 ` Christoph Anton Mitterer
2023-10-13 15:00 ` Dragan Simic
2023-10-12 0:04 ` Jeff King
2023-10-12 0:16 ` Dragan Simic
2023-10-12 1:39 ` Junio C Hamano
2023-10-12 5:30 ` Dragan Simic
2023-10-12 16:19 ` Junio C Hamano
2023-10-13 20:12 ` Dragan Simic
[not found] ` <cfbe174f-23ac-4a35-8db4-66bdfdfdc14e@gmail.com>
2023-11-02 6:01 ` Thomas Guyot
2023-11-02 6:14 ` Dragan Simic
2023-11-02 6:48 ` Dragan Simic
2023-11-02 13:19 ` Thomas Guyot
2023-11-02 14:19 ` Dragan Simic
2023-11-03 11:47 ` Thomas Guyot
2023-11-03 15:28 ` Andy Koppe
2023-11-03 18:38 ` Dragan Simic
2023-11-03 18:22 ` Dragan Simic
2023-11-06 3:47 ` Dragan Simic
2024-03-21 15:53 ` Dragan Simic
2023-10-12 3:54 ` Christoph Anton Mitterer
2023-10-12 5:57 ` Dragan Simic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=60f1922b12a6ef304ffa36c334348e34@manjaro.org \
--to=dsimic@manjaro.org \
--cc=calestyo@scientia.org \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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).