[Python-Dev] A kind of configuration question

Moore, Paul Paul.Moore@uk.origin-it.com
Fri, 6 Apr 2001 11:18:45 +0100


>[Moore, Paul]
>> There's an issue on Windows, because there are two types of executable
>> (console and GUI). I've raised a bug report on this (407300), but
>> the action taken was to remove the pydoc script (as opposed to the
>> module) from the Windows installer, although there is still a start
>> menu entry.
>
>Paul, that action had nothing to do with your bug report.  Ping managed to
>break AMK's pydoc script on Windows the morning of 2.1b2 release day, and
>that left the Windows installer installing a non-functional Start menu link
>for pydoc.

Oh. Sorry about that - I seem to have misread your comments from when you
reclosed the bug. I read them as "I've removed the scripts, so your bug no
longer applies", rather than "the script needed to be removed, so ths issue
has gone away". I apologise if I sounded critical. I do still think that
being able to type "pydoc MODULE" at the command line would be very nice,
and I feel that my batch file does this in a simple way. I'd be disappointed
if it wasn't included in 2.1 (the whole pydoc suite appeared quite late, so
minor fixes like this do get pushed up to the wire, but that doesn't
necessarily mean they should be discarded as "too late"), but if it is
deemed too late for that, could it be put into 2.2?

On a related note, has anything happened on my other bug report (406280)? At
the very least, using tempfilepager instead of pipepager as a workaround
would be sensible. Leaving things broken makes no real sense. This is a
patch:

--- pydoc.py.orig	Fri Mar 23 12:42:06 2001
+++ pydoc.py	Fri Apr 06 10:56:02 2001
@@ -910,7 +910,10 @@
     if not sys.stdin.isatty() or not sys.stdout.isatty():
         return plainpager
     if os.environ.has_key('PAGER'):
-        return lambda a: pipepager(a, os.environ['PAGER'])
+        if sys.platform == 'win32':
+            return lambda a: tempfilepager(a, os.environ['PAGER'])
+        else:
+            return lambda a: pipepager(a, os.environ['PAGER'])
     if sys.platform == 'win32':
         return lambda a: tempfilepager(a, 'more <')
     if hasattr(os, 'system') and os.system('less 2>/dev/null') == 0:

>> ...
>> The other thing is to support the command line usage "pydoc XXX".
>
>Given that Win9x systems come with feeble cmdline shells (they're 50 lines
>max, and no way to scroll back), I have no interest in pretending to
support
>pydoc's cmdline usage under Windows DOS boxes.

Given that Windows NT/2000 command line shells are fine, and reasonably
capable (including command history both at the prompt and within
applications, whatever size you like, and scrolling buffers), refusing to
support them just because 9x (which frankly is a dying environment for
developers) is pathetic, is not a very helpful stance to take. I've supplied
two low-impact patches which make pydoc work on the Windows NT command line.
Sure, I can apply them manually to my installation, but why not make them
available to everyone?

frustrated-ly y'rs,
Paul.