summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Roten <tsroten@users.noreply.github.com>2017-06-11 12:00:44 -0500
committerGitHub <noreply@github.com>2017-06-11 12:00:44 -0500
commitf4d6adfc2c7c34799711c5ed7d425c55f9719e4a (patch)
treed100e5799aecfe76b69582a35f0ed759279fb747
parentaf27c34521b183db4a11dfc5e69a84c7a1759dc6 (diff)
parentd060de940e5b9a6f071bf66f1f130777ef3ba092 (diff)
Merge pull request #729 from dbcli/j-bennet/set-less-if-unset
Only change LESS in env if not already configured.
-rw-r--r--changelog.rst1
-rwxr-xr-xpgcli/main.py18
2 files changed, 13 insertions, 6 deletions
diff --git a/changelog.rst b/changelog.rst
index aba1ac72..a547136e 100644
--- a/changelog.rst
+++ b/changelog.rst
@@ -4,6 +4,7 @@ Upcoming
* Refresh completions after `COMMIT` or `ROLLBACK`. (Thanks: `Irina Truong`_)
* Fixed DSN aliases not being read from custom pgclirc (issue #717). (Thanks: `Irina Truong`_).
* Use dbcli's Homebrew tap for installing pgcli on macOS (issue #718) (Thanks: `Thomas Roten`_).
+* Only set `LESS` environment variable if it's unset. (Thanks: `Irina Truong`_)
* Quote schema in `SET SCHEMA` statement (issue #469) (Thanks: `Irina Truong`_)
1.6.0
diff --git a/pgcli/main.py b/pgcli/main.py
index 9befaefa..618af5c4 100755
--- a/pgcli/main.py
+++ b/pgcli/main.py
@@ -84,6 +84,7 @@ OutputSettings.__new__.__defaults__ = (
None, None, None, '<null>', False, None, lambda x: x
)
+
# no-op logging handler
class NullHandler(logging.Handler):
def emit(self, record):
@@ -100,16 +101,21 @@ class PGCli(object):
os_environ_pager = os.environ.get('PAGER')
if configured_pager:
- self.logger.info('Default pager found in config file: ' + '\'' + configured_pager + '\'')
+ self.logger.info(
+ 'Default pager found in config file: "{}"'.format(configured_pager))
os.environ['PAGER'] = configured_pager
elif os_environ_pager:
- self.logger.info('Default pager found in PAGER environment variable: ' + '\'' + os_environ_pager + '\'')
+ self.logger.info('Default pager found in PAGER environment variable: "{}"'.format(
+ os_environ_pager))
os.environ['PAGER'] = os_environ_pager
else:
- self.logger.info('No default pager found in environment. Using os default pager')
- # Always set default set of less recommended options, they are ignored if pager is
- # different than less or is already parameterized with their own arguments
- os.environ['LESS'] = '-SRXF'
+ self.logger.info(
+ 'No default pager found in environment. Using os default pager')
+
+ # Set default set of less recommended options, if they are not already set.
+ # They are ignored if pager is different than less.
+ if not os.environ.get('LESS'):
+ os.environ['LESS'] = '-SRXF'
def __init__(self, force_passwd_prompt=False, never_passwd_prompt=False,
pgexecute=None, pgclirc_file=None, row_limit=None,