changeset: 93632:c8adee8a0ccb parent: 93628:ce9881eecfb4 parent: 93631:c6182a7e75fa user: Serhiy Storchaka date: Fri Nov 28 00:11:07 2014 +0200 files: Lib/pydoc.py Misc/NEWS description: Issue #22314: pydoc now works when the LINES environment variable is set. diff -r ce9881eecfb4 -r c8adee8a0ccb Lib/pydoc.py --- a/Lib/pydoc.py Thu Nov 27 22:14:30 2014 +0200 +++ b/Lib/pydoc.py Fri Nov 28 00:11:07 2014 +0200 @@ -1477,12 +1477,18 @@ 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 -r ce9881eecfb4 -r c8adee8a0ccb Misc/NEWS --- a/Misc/NEWS Thu Nov 27 22:14:30 2014 +0200 +++ b/Misc/NEWS Fri Nov 28 00:11:07 2014 +0200 @@ -383,6 +383,11 @@ - Issue #17442: InteractiveInterpreter now displays the full chained traceback in its showtraceback method, to match the built in interactive interpreter. +Tools/Demos +----------- + +- Issue #22314: pydoc now works when the LINES environment variable is set. + - Issue #10510: distutils register and upload methods now use HTML standards compliant CRLF line endings.