M PyShell.py
M rpc.py SF Bug 629987: Idle not printing prompts following SyntaxError
This commit is contained in:
parent
a59ef7bbe0
commit
6e44cc2369
|
@ -1,6 +1,7 @@
|
|||
#! /usr/bin/env python
|
||||
|
||||
import os
|
||||
import os.path
|
||||
import sys
|
||||
import string
|
||||
import getopt
|
||||
|
@ -24,7 +25,6 @@ from UndoDelegator import UndoDelegator
|
|||
from OutputWindow import OutputWindow
|
||||
from configHandler import idleConf
|
||||
import idlever
|
||||
import os.path
|
||||
|
||||
import rpc
|
||||
import RemoteDebugger
|
||||
|
@ -417,6 +417,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
|
|||
except (OverflowError, SyntaxError):
|
||||
self.tkconsole.resetoutput()
|
||||
InteractiveInterpreter.showsyntaxerror(self, filename)
|
||||
self.tkconsole.showprompt()
|
||||
else:
|
||||
self.runcode(code)
|
||||
|
||||
|
@ -458,23 +459,24 @@ class ModifiedInterpreter(InteractiveInterpreter):
|
|||
"""
|
||||
text = self.tkconsole.text
|
||||
stuff = self.unpackerror()
|
||||
if not stuff:
|
||||
if stuff:
|
||||
msg, lineno, offset, line = stuff
|
||||
if lineno == 1:
|
||||
pos = "iomark + %d chars" % (offset-1)
|
||||
else:
|
||||
pos = "iomark linestart + %d lines + %d chars" % \
|
||||
(lineno-1, offset-1)
|
||||
text.tag_add("ERROR", pos)
|
||||
text.see(pos)
|
||||
char = text.get(pos)
|
||||
if char and char in IDENTCHARS:
|
||||
text.tag_add("ERROR", pos + " wordstart", pos)
|
||||
self.tkconsole.resetoutput()
|
||||
self.write("SyntaxError: %s\n" % str(msg))
|
||||
else:
|
||||
self.tkconsole.resetoutput()
|
||||
InteractiveInterpreter.showsyntaxerror(self, filename)
|
||||
return
|
||||
msg, lineno, offset, line = stuff
|
||||
if lineno == 1:
|
||||
pos = "iomark + %d chars" % (offset-1)
|
||||
else:
|
||||
pos = "iomark linestart + %d lines + %d chars" % (lineno-1,
|
||||
offset-1)
|
||||
text.tag_add("ERROR", pos)
|
||||
text.see(pos)
|
||||
char = text.get(pos)
|
||||
if char and char in IDENTCHARS:
|
||||
text.tag_add("ERROR", pos + " wordstart", pos)
|
||||
self.tkconsole.resetoutput()
|
||||
self.write("SyntaxError: %s\n" % str(msg))
|
||||
self.tkconsole.showprompt()
|
||||
|
||||
def unpackerror(self):
|
||||
type, value, tb = sys.exc_info()
|
||||
|
|
|
@ -90,7 +90,7 @@ objecttable = {}
|
|||
|
||||
class SocketIO:
|
||||
|
||||
debugging = 0
|
||||
debugging = False
|
||||
|
||||
def __init__(self, sock, objtable=None, debugging=None):
|
||||
self.mainthread = threading.currentThread()
|
||||
|
@ -189,6 +189,7 @@ class SocketIO:
|
|||
|
||||
def asyncreturn(self, seq):
|
||||
response = self.getresponse(seq)
|
||||
self.debug("asyncreturn:", response)
|
||||
return self.decoderesponse(response)
|
||||
|
||||
def decoderesponse(self, response):
|
||||
|
|
Loading…
Reference in New Issue