Pārlūkot izejas kodu

Respect the `LESS' environment variable.

Steal a few more lines from git's pager code and only pass the hardcoded
"-FRSX" flags if the user has not set the LESS environmen variable to some
other variable, thus behaving more closely to what the user would expect.
Raphael Kubo da Costa 11 gadus atpakaļ
vecāks
revīzija
db3bc92bed
1 mainītis faili ar 6 papildinājumiem un 2 dzēšanām
  1. 6
    2
      cdiff.py

+ 6
- 2
cdiff.py Parādīt failu

@@ -29,6 +29,7 @@ try:
29 29
 except NameError:
30 30
     def next(obj): return obj.next()
31 31
 
32
+import os
32 33
 import re
33 34
 import signal
34 35
 import subprocess
@@ -606,9 +607,12 @@ def markup_to_pager(stream, opts):
606 607
     See issue #30 (https://github.com/ymattw/cdiff/issues/30) for more
607 608
     information.
608 609
     """
609
-    # Args stolen from git source: github.com/git/git/blob/master/pager.c
610
+    pager_cmd = ['less']
611
+    if not os.getenv('LESS'):
612
+        # Args stolen from git source: github.com/git/git/blob/master/pager.c
613
+        pager_cmd.extend(['-FRSX'])
610 614
     pager = subprocess.Popen(
611
-        ['less', '-FRSX'], stdin=subprocess.PIPE, stdout=sys.stdout)
615
+        pager_cmd, stdin=subprocess.PIPE, stdout=sys.stdout)
612 616
 
613 617
     diffs = DiffParser(stream).get_diff_generator()
614 618
     marker = DiffMarker()