Skip to content

IDLE: Add File - Reload #44968

Description

@rhettinger
BPO 1721083
Nosy @rhettinger, @terryjreedy
Dependencies
  • bpo-1175686: add "reload" function to IDLE
  • Files
  • idle_filerevert.diff
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = 'https://github.com/terryjreedy'
    closed_at = None
    created_at = <Date 2007-05-18.02:15:52.000>
    labels = ['expert-IDLE', 'type-feature', '3.10']
    title = 'Add File - Reload'
    updated_at = <Date 2020-07-28.00:56:04.086>
    user = 'https://github.com/rhettinger'

    bugs.python.org fields:

    activity = <Date 2020-07-28.00:56:04.086>
    actor = 'terry.reedy'
    assignee = 'terry.reedy'
    closed = False
    closed_date = None
    closer = None
    components = ['IDLE']
    creation = <Date 2007-05-18.02:15:52.000>
    creator = 'rhettinger'
    dependencies = ['1175686']
    files = ['14635']
    hgrepos = []
    issue_num = 1721083
    keywords = ['needs review']
    message_count = 16.0
    messages = ['55114', '55115', '55116', '55117', '59757', '59758', '70912', '91213', '91538', '112887', '186003', '186009', '186031', '371442', '374446', '374447']
    nosy_count = 2.0
    nosy_names = ['rhettinger', 'terry.reedy']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = 'test needed'
    status = 'open'
    superseder = None
    type = 'enhancement'
    url = 'https://bugs.python.org/issue1721083'
    versions = ['Python 3.10']

    Linked PRs

    Activity

    1. rhettinger commented on May 18, 2007

      @rhettinger
      ContributorAuthor

      When using CVS or SVN, it is common to revert or merge a file that is open in the editor. It would be great to have a reload/refresh option on the menu to bring in the changed file. Without that option, the only approach is to close without saving, fire-up the editor again, and reload the file manually.

    2. kbkaiser commented on May 22, 2007

      @kbkaiser
      Contributor

      But isn't this an example of a bell/whistle which is outside IDLE's design policies? It would add a menu item which would be rather rarely used, especially by beginners, it seems to me. Why not just close the edit window (not IDLE) and re-open using the Files / Recent Files feature?

    3. taleinat commented on Jul 20, 2007

      @taleinat
      Contributor

      I agree with KBK that what you suggest goes against IDLE's philosophy, which is to be simple and uncluttered, avoiding "bells and whistles".

      However, I do think that a simple "revert file" menu item in the File menu, which would just reload the file from the file system, could be generally useful.

      Additionally, IDLE could monitor the file on the file system, and if it is changed outside of IDLE, ask the user whether to continue with the current version or switch to the new version on disk. I've seen some text editors do this, and it can save some headaches. Drawbacks are that some users may find this annoying (at least at first), and it could be somewhat complex to implement. Thoughts on this? Perhaps this should be brought up on IDLE-dev?

      Each of the above would allow you to revert/merge using whatever CVS/SVN/etc. tools you normally use, then just load the new version inside the already open instance of IDLE. I think this would be a good separation of roles between IDLE and version control tools.

    4. kbkaiser commented on Jul 22, 2007

      @kbkaiser
      Contributor

      If you have more than one IDLE window open (even a shell), it's not necessary to shut down. Just close the edit window, confirm the unsaved warning, and use the Recent Files menu item to reopen with the current disk contents. We are talking about five mouse clicks instead of three, counting confirmation dialogs. In my opinion, it's not worth complicating IDLE and confusing beginners with a 'revert' menu item to save two clicks every other day or so.

      I normally use IDLE with svn and never feel the need to reload something that was merged. After all, you should have updated before you opened the file in IDLE. If you modified the file in IDLE, saved, and checked it in, IDLE's copy is the same as svn.

      Maybe you have a use case I haven't considered. If it's a good one, then a (normally inactive) IDLE extension might be warranted for those who really need this.

      Adding a warning when saving that the file has changed on disk is a good emacs feature which has saved my bacon a number of times. That would be a good feature to add to IDLE, but that's a different request. Rejecting this one.

    5. Nashev commented on Jan 11, 2008

      Nashevmannequin
      Mannequin

      It is very nice feature, that exists in many advanced and professional
      GUI-based editors on the Windows and Mac. For example, i can fast name
      TextWrangler, HomeSite, Flash, PhotoShop and it is only first names in
      mind. It feature for simplify tool's usage, it is improve GUI usability.

    6. Nashev commented on Jan 11, 2008

      Nashevmannequin
      Mannequin

      There are command in menu is called "Revert".

      P.S.: for knowing that file changed, programs in windows can register OS
      callback for this event and just react on it. In Mac i think too, but i
      don't know how with it on unix and python.

    7. terryjreedy commented on Aug 8, 2008

      @terryjreedy
      Member

      This appears to me to duplicate and supercede
      http://bugs.python.org/issue1175686
      If so, could that be closed as superceded?

    8. gpolo commented on Aug 3, 2009

      gpolomannequin
      Mannequin

      I have done a very initial patch in an attempt to define where we should
      go with this feature. There are several different proposals around this
      issue and the superseded one, I opted to implement the simplest one
      which is to add a 'Revert' entry in the file menu which re-reads the
      file currently open.

      There are at least two problems with this patch. First, I don't think
      there is a non-hacky way to place a command on a menu in a specific
      place by using an idle extension, so, the 'Revert' entry is the last
      entry in the file menu right now. I guess this would be solved by not
      making this an extension and then proceed to manually remove the menu
      entry while creating the shell window (similarly to what it is done when
      running under mac osx). The second problem happens when reverting the
      file, I'm not sure if it should be done differently but this seems to
      cause some problem with Multicall.

    9. gpolo commented on Aug 13, 2009

      gpolomannequin
      Mannequin

      Kurt, there is now a patch on bpo-6699 which adds your suggested feature:

      "Adding a warning when saving that the file has changed on disk is a
      good emacs feature which has saved my bacon a number of times. That
      would be a good feature to add to IDLE, but that's a different request".

    10. 20 remaining items

    11. terryjreedy commented on Jul 28, 2020

      @terryjreedy
      Member

      Recent edits to iomenu.IOBinding.loadfile were intended to preserve the option of reloading a non-empty editor.

    12. transferred this issue fromon Apr 10, 2022
    13. added
      3.13only security fixes
      and removed on May 2, 2023
    14. CoolCat467 commented on Aug 16, 2024

      @CoolCat467
      Contributor

      I've made an IDLE extension that implements the ability to reload the file: https://pypi.org/project/idlereload/

    15. added
      stdlibStandard Library Python modules in the Lib/ directory
      on Oct 18, 2025
    16. ashm-dev commented on Nov 13, 2025

      @ashm-dev
      Contributor

      Ping. Is this issue still relevant?

    17. CoolCat467 commented on Nov 13, 2025

      @CoolCat467
      Contributor

      Still not a built-in feature, so I would argue yes.

    18. terryjreedy commented on Nov 14, 2025

      @terryjreedy
      Member

      Leave it open

    19. added 2 commits that reference this issue on Nov 14, 2025
    20. changed the title [-]Add File - Reload[/-] [+]IDLE: Add File - Reload[/+] on Jan 3, 2026
    21. removed
      stdlibStandard Library Python modules in the Lib/ directory
      on Jan 15, 2026
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Metadata

    Metadata

    Assignees

    Labels

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions