This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Idle: timed autosave for shell (and maybe editor) window
Type: enhancement Stage: needs patch
Components: IDLE Versions: Python 3.10
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: terry.reedy
Priority: normal Keywords:

Created on 2014-04-04 08:13 by terry.reedy, last changed 2022-04-11 14:58 by admin.

Messages (4)
msg215499 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2014-04-04 08:13
From #21140, msg215485, Raymond Hettinger: "Students commonly save shell sessions as a record of everything they tried in call. It would nice if there were a way to trigger a periodic autosave (perhaps every five minutes or so)."
msg238739 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2015-03-20 23:41
For Shell, autoappend would do the same, and saving on each >>> rather than by time might be more appropriate.
msg259949 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2016-02-09 18:51
On idledev, Jeff Silverman requested autosave, I presume for editor windows.  If one is doing closely interactive development, hitting F5 to save and run every few minutes, this would not be necessary.  But if not, ... I know that autosaves in other programs (editors and games) have saved me lots of trouble more than once.

Saving every n minutes should be trivial using .after.  With slightly more work, it could be every n minute the window is active (has the focus).  Any untimed save should reset the timer.  Since IDLE looks at every keystroke (I believe), counting keystrokes and saving every n keystrokes might be possible.
msg259952 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2016-02-09 20:20
I list below other IDLE issues containing 'autosave', so I don't have to look at each issue for relevance to this one again.

#21140  22 Idle: saving an OutputWindow should default to .txt (patch)
           (Has comment prompting this issue.  Otherwise not relevant.)
#23666  10 Add shell session logging option to IDLE
           (Related to this issue, partial duplicate)
#21937   6 IDLE interactive window doesn't display unsaved indicator
           (Actually, *...* indicates non-empty undo buffer.)
#19042   9 Idle: add option to autosave 'Untitled' edit window
           (On F5, same as for titled edit window. See 1326830.)
#4765   20 IDLE fails to "Delete Custom Key Set" properly (patch)
           ('autosave' in quoted .idlerc/config-main.cfg)
<closed>
#1175686 79 add "reload" function to IDLE
            (Closed as dup, 'autosave' is about F5.  Not relevant.)
#1326830 125 python scratchpad (IDLE)
             (Rejected.  19042 is a re-opening of this.)
History
Date User Action Args
2022-04-11 14:58:01adminsetgithub: 65351
2020-06-06 16:02:22terry.reedysetversions: + Python 3.10, - Python 3.5, Python 3.6
2016-02-09 20:20:02terry.reedysetmessages: + msg259952
versions: + Python 3.6, - Python 2.7, Python 3.4
2016-02-09 18:51:45terry.reedysetmessages: + msg259949
2015-03-20 23:41:33terry.reedysetmessages: + msg238739
2014-04-04 08:13:06terry.reedycreate