Terry J. Reedy <tjre...@udel.edu> added the comment:

Recap and proposal

When editing a named file, Open and Save start in the directory of that file.  
Running a file sets the initial working directory of the execution process, 
which affects imports in the code.

We are here discussing the working directory for the IDLE process.  This 
affects a. the working directory for interactive code entered without having 
first run from the editor; b. the start directory for Open and Save in both 
Shell and any untitled editor windows.

When IDLE is started with command line 'python -m idlelib', its working 
directory is that of the console.  We agree that IDLE should not change this.  
In this case, sys.stdout is not None.  (The exception is when one starts with 
pythonw, which which is normally useless in the console.)

When IDLE is started Windows Explorer by right clicking a file and selecting 
'Edit with IDLE' its working directory is the same as the file.  I propose that 
IDLE should not change the directory in this case either. In this case, there 
is at least one filename in sys.args, which IDLE parses anyway.

I initially considered this issue to be about changing the installed Start menu 
shortcut.  But it was suggested that IDLE code might be better.  Adding a 
configuration option would require this.  Such code would also not be limited 
to Windows.  I am currently thinking of something like

if sys.stdout is None and no file in sys.argv:
    start_dir = idleConf(...) #28775, default None?.
    if start_dir is None:
        start_dir = <system-specific default
    try:
        chdir(start_dir)
    except OSError as e:
        <display message>
        try:
            chdir(expanduser('~'))
        except OSError as e:
             <display message -- stay with system default>

This might be somehow coordinated with .idlerc location search.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue22121>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to