From 07a4529278f4112e3a98686f01db6b05fea5f280 Mon Sep 17 00:00:00 2001 From: Chih-Hsuan Yen Date: Wed, 24 May 2023 22:32:23 +0800 Subject: [PATCH] pager: set $LESS only when missing This matches the git behavior. From [1], > When the `LESS` environment variable is unset, Git sets it to `FRX` > (if `LESS` environment variable is set, Git does not change it at > all). The default $LESS is changed from FRSX to FRX since git 2.1.0 [2]. This change also updates the default $LESS for repo. [1] https://git-scm.com/docs/git-config#Documentation/git-config.txt-corepager [2] https://github.com/git/git/commit/b3275838d969b7ecb91aae584226fccbeb046aca Bug: https://crbug.com/gerrit/16973 Change-Id: I64ccaa7b034fdb6a92c10025e47f5d07e85e6451 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/374894 Reviewed-by: Chih-Hsuan Yen Reviewed-by: Mike Frysinger Tested-by: Chih-Hsuan Yen --- pager.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pager.py b/pager.py index dbd5ae85..2d51b45d 100644 --- a/pager.py +++ b/pager.py @@ -118,7 +118,10 @@ def _BecomePager(pager): # available versions of 'less', a better 'more'. _a, _b, _c = select.select([0], [], [0]) - os.environ["LESS"] = "FRSX" + # This matches the behavior of git, which sets $LESS to `FRX` if it is not + # set. See: + # https://git-scm.com/docs/git-config#Documentation/git-config.txt-corepager + os.environ.setdefault("LESS", "FRX") try: os.execvp(pager, [pager])