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.
This commit is contained in:
Terry Jan Reedy 2015-07-31 22:34:37 -04:00
parent 9a82bd45cd
commit 231007fe14
3 changed files with 8 additions and 8 deletions

View File

@ -469,7 +469,7 @@ def start_subprocess(self):
self.poll_subprocess() self.poll_subprocess()
return self.rpcclt return self.rpcclt
def restart_subprocess(self, with_cwd=False): def restart_subprocess(self, with_cwd=False, filename=''):
if self.restarting: if self.restarting:
return self.rpcclt return self.rpcclt
self.restarting = True self.restarting = True
@ -497,14 +497,13 @@ def restart_subprocess(self, with_cwd=False):
console.stop_readline() console.stop_readline()
# annotate restart in shell window and mark it # annotate restart in shell window and mark it
console.text.delete("iomark", "end-1c") console.text.delete("iomark", "end-1c")
if was_executing: tag = 'RUN ' + filename if filename else 'RESTART Shell'
console.write('\n') halfbar = ((int(console.width) -len(tag) - 4) // 2) * '='
console.showprompt() console.write("\n{0} {1} {0}".format(halfbar, tag))
halfbar = ((int(console.width) - 16) // 2) * '='
console.write(halfbar + ' RESTART ' + halfbar)
console.text.mark_set("restart", "end-1c") console.text.mark_set("restart", "end-1c")
console.text.mark_gravity("restart", "left") console.text.mark_gravity("restart", "left")
console.showprompt() if not filename:
console.showprompt()
# restart subprocess debugger # restart subprocess debugger
if debug: if debug:
# Restarted debugger connects to current instance of debug GUI # Restarted debugger connects to current instance of debug GUI

View File

@ -142,7 +142,7 @@ def _run_module_event(self, event):
return 'break' return 'break'
interp = self.shell.interp interp = self.shell.interp
if PyShell.use_subprocess: 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) dirname = os.path.dirname(filename)
# XXX Too often this discards arguments the user just set... # XXX Too often this discards arguments the user just set...
interp.runcommand("""if 1: interp.runcommand("""if 1:

View File

@ -1403,6 +1403,7 @@ Fraser Tweedale
Doobee R. Tzeck Doobee R. Tzeck
Eren Türkay Eren Türkay
Lionel Ulmer Lionel Ulmer
Adnan Umer
Roger Upole Roger Upole
Daniel Urban Daniel Urban
Michael Urman Michael Urman