From ab5e9b9213558d00ef8405d89e4cb103795972e3 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Fri, 28 Nov 2014 00:09:29 +0200 Subject: Issue #22314: pydoc now works when the LINES environment variable is set. --- Lib/pydoc.py | 10 ++++++++-- Misc/NEWS | 5 +++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Lib/pydoc.py b/Lib/pydoc.py index bfb0a03..d53a1b4 100755 --- a/Lib/pydoc.py +++ b/Lib/pydoc.py @@ -1479,12 +1479,18 @@ def ttypager(text): old = tty.tcgetattr(fd) tty.setcbreak(fd) getchar = lambda: sys.stdin.read(1) - except (ImportError, AttributeError): + except (ImportError, AttributeError, io.UnsupportedOperation): tty = None getchar = lambda: sys.stdin.readline()[:-1][:1] try: - r = inc = os.environ.get('LINES', 25) - 1 + try: + h = int(os.environ.get('LINES', 0)) + except ValueError: + h = 0 + if h <= 1: + h = 25 + r = inc = h - 1 sys.stdout.write('\n'.join(lines[:inc]) + '\n') while lines[r:]: sys.stdout.write('-- more --') diff --git a/Misc/NEWS b/Misc/NEWS index 7c17a37..e69f919 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -184,6 +184,11 @@ Documentation - Issue #21514: The documentation of the json module now refers to new JSON RFC 7159 instead of obsoleted RFC 4627. +Tools/Demos +----------- + +- Issue #22314: pydoc now works when the LINES environment variable is set. + Windows ------- -- cgit v0.12