mirror of https://github.com/python/cpython.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.
This commit is contained in:
parent
9a82bd45cd
commit
231007fe14
|
@ -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
|
||||||
|
|
|
@ -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:
|
||||||
|
|
Loading…
Reference in New Issue