From: Terry Jan Reedy Date: Sat, 1 Aug 2015 02:34:37 +0000 (-0400) Subject: Issue #21192: Idle Editor. When a file is run, put its name in the restart bar. X-Git-Tag: v3.5.0rc1~59^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=231007fe142975ee5e468929af5ed69705e7547e;p=thirdparty%2FPython%2Fcpython.git Issue #21192: Idle Editor. When a file is run, put its name in the restart bar. Do not print false prompts. Original patch by Adnan Umer. --- diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py index 12233fb86fda..4f7a6de5ea39 100755 --- a/Lib/idlelib/PyShell.py +++ b/Lib/idlelib/PyShell.py @@ -469,7 +469,7 @@ class ModifiedInterpreter(InteractiveInterpreter): self.poll_subprocess() return self.rpcclt - def restart_subprocess(self, with_cwd=False): + def restart_subprocess(self, with_cwd=False, filename=''): if self.restarting: return self.rpcclt self.restarting = True @@ -497,14 +497,13 @@ class ModifiedInterpreter(InteractiveInterpreter): console.stop_readline() # annotate restart in shell window and mark it console.text.delete("iomark", "end-1c") - if was_executing: - console.write('\n') - console.showprompt() - halfbar = ((int(console.width) - 16) // 2) * '=' - console.write(halfbar + ' RESTART ' + halfbar) + tag = 'RUN ' + filename if filename else 'RESTART Shell' + halfbar = ((int(console.width) -len(tag) - 4) // 2) * '=' + console.write("\n{0} {1} {0}".format(halfbar, tag)) console.text.mark_set("restart", "end-1c") console.text.mark_gravity("restart", "left") - console.showprompt() + if not filename: + console.showprompt() # restart subprocess debugger if debug: # Restarted debugger connects to current instance of debug GUI diff --git a/Lib/idlelib/ScriptBinding.py b/Lib/idlelib/ScriptBinding.py index e71ddf49d34f..d700525a7306 100644 --- a/Lib/idlelib/ScriptBinding.py +++ b/Lib/idlelib/ScriptBinding.py @@ -142,7 +142,7 @@ class ScriptBinding: return 'break' interp = self.shell.interp if PyShell.use_subprocess: - interp.restart_subprocess(with_cwd=False) + interp.restart_subprocess(with_cwd=False, filename=code.co_filename) dirname = os.path.dirname(filename) # XXX Too often this discards arguments the user just set... interp.runcommand("""if 1: diff --git a/Misc/ACKS b/Misc/ACKS index cc557b311bf1..7fd3baf48e9b 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -1403,6 +1403,7 @@ Fraser Tweedale Doobee R. Tzeck Eren Türkay Lionel Ulmer +Adnan Umer Roger Upole Daniel Urban Michael Urman