tools: Handle PAGER containing arguments
When printing full help output from a tool, we should be able to handle a PAGER variable which includes arguments, e.g. PAGER='less -F'. Signed-off-by: Paul Barker <paul.barker@sancloud.com>
This commit is contained in:
@@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
import glob
|
import glob
|
||||||
import os
|
import os
|
||||||
|
import shlex
|
||||||
import shutil
|
import shutil
|
||||||
import struct
|
import struct
|
||||||
import sys
|
import sys
|
||||||
@@ -588,9 +589,10 @@ def PrintFullHelp(fname):
|
|||||||
Args:
|
Args:
|
||||||
fname: Path to a file containing the full help message
|
fname: Path to a file containing the full help message
|
||||||
"""
|
"""
|
||||||
pager = os.getenv('PAGER')
|
pager = shlex.split(os.getenv('PAGER', ''))
|
||||||
if not pager:
|
if not pager:
|
||||||
pager = shutil.which('less')
|
lesspath = shutil.which('less')
|
||||||
|
pager = [lesspath] if lesspath else None
|
||||||
if not pager:
|
if not pager:
|
||||||
pager = 'more'
|
pager = ['more']
|
||||||
command.Run(pager, fname)
|
command.Run(*pager, fname)
|
||||||
|
Reference in New Issue
Block a user