mirror of
https://github.com/python/cpython.git
synced 2025-09-26 10:19:53 +00:00
Merged revisions 56443-56466 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/p3yk ................ r56454 | kurt.kaiser | 2007-07-18 22:26:14 -0700 (Wed, 18 Jul 2007) | 2 lines Make relative imports explicit for py3k ................ r56455 | kurt.kaiser | 2007-07-18 23:12:15 -0700 (Wed, 18 Jul 2007) | 2 lines Was modifying dict during iteration. ................ r56457 | guido.van.rossum | 2007-07-19 07:33:19 -0700 (Thu, 19 Jul 2007) | 2 lines Fix failing test. ................ r56466 | guido.van.rossum | 2007-07-19 20:58:16 -0700 (Thu, 19 Jul 2007) | 35 lines Merged revisions 56413-56465 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r56439 | georg.brandl | 2007-07-17 23:37:55 -0700 (Tue, 17 Jul 2007) | 2 lines Use "Unix" as platform name, not "UNIX". ........ r56441 | guido.van.rossum | 2007-07-18 10:19:14 -0700 (Wed, 18 Jul 2007) | 3 lines SF patch# 1755885 by Kurt Kaiser: show location of Unicode escape errors. (Slightly tweaked for style and refcounts.) ........ r56444 | kurt.kaiser | 2007-07-18 12:58:42 -0700 (Wed, 18 Jul 2007) | 2 lines Fix failing unicode test caused by change to ast.c at r56441 ........ r56451 | georg.brandl | 2007-07-18 15:36:53 -0700 (Wed, 18 Jul 2007) | 2 lines Add description for wave.setcomptype() values ........ r56456 | walter.doerwald | 2007-07-19 06:04:38 -0700 (Thu, 19 Jul 2007) | 3 lines Document that codecs.lookup() returns a CodecInfo object. (fixes SF bug #1754453). ........ r56463 | facundo.batista | 2007-07-19 16:57:38 -0700 (Thu, 19 Jul 2007) | 6 lines Added a select.select call in the test server loop to make sure the socket is ready to be read from before attempting a read (this prevents an error 10035 on some Windows platforms). [GSoC - Alan McIntyre] ........ ................
This commit is contained in:
parent
f66263c20a
commit
36e0a92442
41 changed files with 143 additions and 137 deletions
|
@ -142,6 +142,8 @@ more frames are written.
|
||||||
|
|
||||||
\begin{methoddesc}[Wave_write]{setcomptype}{type, name}
|
\begin{methoddesc}[Wave_write]{setcomptype}{type, name}
|
||||||
Set the compression type and description.
|
Set the compression type and description.
|
||||||
|
At the moment, only compression type \samp{NONE} is supported,
|
||||||
|
meaning no compression.
|
||||||
\end{methoddesc}
|
\end{methoddesc}
|
||||||
|
|
||||||
\begin{methoddesc}[Wave_write]{setparams}{tuple}
|
\begin{methoddesc}[Wave_write]{setparams}{tuple}
|
||||||
|
|
|
@ -7,10 +7,9 @@ import os
|
||||||
import sys
|
import sys
|
||||||
import string
|
import string
|
||||||
|
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
from . import AutoCompleteWindow
|
||||||
import AutoCompleteWindow
|
from .HyperParser import HyperParser
|
||||||
from HyperParser import HyperParser
|
|
||||||
|
|
||||||
import __main__
|
import __main__
|
||||||
|
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
An auto-completion window for IDLE, used by the AutoComplete extension
|
An auto-completion window for IDLE, used by the AutoComplete extension
|
||||||
"""
|
"""
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from MultiCall import MC_SHIFT
|
from .MultiCall import MC_SHIFT
|
||||||
import AutoComplete
|
import idlelib.AutoComplete
|
||||||
|
|
||||||
HIDE_VIRTUAL_EVENT_NAME = "<<autocompletewindow-hide>>"
|
HIDE_VIRTUAL_EVENT_NAME = "<<autocompletewindow-hide>>"
|
||||||
HIDE_SEQUENCES = ("<FocusOut>", "<ButtonPress>")
|
HIDE_SEQUENCES = ("<FocusOut>", "<ButtonPress>")
|
||||||
|
|
|
@ -9,7 +9,7 @@ windows.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
import sys
|
import sys
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
menudefs = [
|
menudefs = [
|
||||||
# underscore prefixes character to underscore
|
# underscore prefixes character to underscore
|
||||||
|
@ -80,7 +80,6 @@ menudefs = [
|
||||||
]),
|
]),
|
||||||
]
|
]
|
||||||
|
|
||||||
import sys
|
|
||||||
if sys.platform == 'darwin' and '.app' in sys.executable:
|
if sys.platform == 'darwin' and '.app' in sys.executable:
|
||||||
# Running as a proper MacOS application bundle. This block restructures
|
# Running as a proper MacOS application bundle. This block restructures
|
||||||
# the menus a little to make them conform better to the HIG.
|
# the menus a little to make them conform better to the HIG.
|
||||||
|
|
|
@ -9,8 +9,8 @@ import re
|
||||||
import sys
|
import sys
|
||||||
import types
|
import types
|
||||||
|
|
||||||
import CallTipWindow
|
from . import CallTipWindow
|
||||||
from HyperParser import HyperParser
|
from .HyperParser import HyperParser
|
||||||
|
|
||||||
import __main__
|
import __main__
|
||||||
|
|
||||||
|
|
|
@ -14,10 +14,10 @@ import os
|
||||||
import sys
|
import sys
|
||||||
import pyclbr
|
import pyclbr
|
||||||
|
|
||||||
import PyShell
|
from . import PyShell
|
||||||
from WindowList import ListedToplevel
|
from .WindowList import ListedToplevel
|
||||||
from TreeWidget import TreeNode, TreeItem, ScrolledCanvas
|
from .TreeWidget import TreeNode, TreeItem, ScrolledCanvas
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
class ClassBrowser:
|
class ClassBrowser:
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,9 @@ not open blocks are not shown in the context hints pane.
|
||||||
"""
|
"""
|
||||||
import Tkinter
|
import Tkinter
|
||||||
from Tkconstants import TOP, LEFT, X, W, SUNKEN
|
from Tkconstants import TOP, LEFT, X, W, SUNKEN
|
||||||
from configHandler import idleConf
|
|
||||||
import re
|
import re
|
||||||
from sys import maxint as INFINITY
|
from sys import maxint as INFINITY
|
||||||
|
from .configHandler import idleConf
|
||||||
|
|
||||||
BLOCKOPENERS = set(["class", "def", "elif", "else", "except", "finally", "for",
|
BLOCKOPENERS = set(["class", "def", "elif", "else", "except", "finally", "for",
|
||||||
"if", "try", "while", "with"])
|
"if", "try", "while", "with"])
|
||||||
|
|
|
@ -3,8 +3,8 @@ import re
|
||||||
import keyword
|
import keyword
|
||||||
import __builtin__
|
import __builtin__
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from Delegator import Delegator
|
from .Delegator import Delegator
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
DEBUG = False
|
DEBUG = False
|
||||||
|
|
||||||
|
@ -248,7 +248,7 @@ class ColorDelegator(Delegator):
|
||||||
self.tag_remove(tag, "1.0", "end")
|
self.tag_remove(tag, "1.0", "end")
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
from Percolator import Percolator
|
from .Percolator import Percolator
|
||||||
root = Tk()
|
root = Tk()
|
||||||
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
|
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
|
||||||
text = Text(background="white")
|
text = Text(background="white")
|
||||||
|
|
|
@ -2,9 +2,9 @@ import os
|
||||||
import bdb
|
import bdb
|
||||||
import types
|
import types
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from WindowList import ListedToplevel
|
from .WindowList import ListedToplevel
|
||||||
from ScrolledList import ScrolledList
|
from .ScrolledList import ScrolledList
|
||||||
import macosxSupport
|
from . import macosxSupport
|
||||||
|
|
||||||
|
|
||||||
class Idb(bdb.Bdb):
|
class Idb(bdb.Bdb):
|
||||||
|
|
|
@ -6,18 +6,19 @@ from itertools import count
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
import tkSimpleDialog
|
import tkSimpleDialog
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
from MultiCall import MultiCallCreator
|
import traceback
|
||||||
|
|
||||||
import webbrowser
|
import webbrowser
|
||||||
import idlever
|
|
||||||
import WindowList
|
from .MultiCall import MultiCallCreator
|
||||||
import SearchDialog
|
from . import idlever
|
||||||
import GrepDialog
|
from . import WindowList
|
||||||
import ReplaceDialog
|
from . import SearchDialog
|
||||||
import PyParse
|
from . import GrepDialog
|
||||||
from configHandler import idleConf
|
from . import ReplaceDialog
|
||||||
import aboutDialog, textView, configDialog
|
from . import PyParse
|
||||||
import macosxSupport
|
from .configHandler import idleConf
|
||||||
|
from . import aboutDialog, textView, configDialog
|
||||||
|
from . import macosxSupport
|
||||||
|
|
||||||
# The default tab setting for a Text widget, in average-width characters.
|
# The default tab setting for a Text widget, in average-width characters.
|
||||||
TK_TABWIDTH_DEFAULT = 8
|
TK_TABWIDTH_DEFAULT = 8
|
||||||
|
@ -40,13 +41,13 @@ def _find_module(fullname, path=None):
|
||||||
return file, filename, descr
|
return file, filename, descr
|
||||||
|
|
||||||
class EditorWindow(object):
|
class EditorWindow(object):
|
||||||
from Percolator import Percolator
|
from .Percolator import Percolator
|
||||||
from ColorDelegator import ColorDelegator
|
from .ColorDelegator import ColorDelegator
|
||||||
from UndoDelegator import UndoDelegator
|
from .UndoDelegator import UndoDelegator
|
||||||
from IOBinding import IOBinding, filesystemencoding, encoding
|
from .IOBinding import IOBinding, filesystemencoding, encoding
|
||||||
import Bindings
|
from . import Bindings
|
||||||
from Tkinter import Toplevel
|
from Tkinter import Toplevel
|
||||||
from MultiStatusBar import MultiStatusBar
|
from .MultiStatusBar import MultiStatusBar
|
||||||
|
|
||||||
help_url = None
|
help_url = None
|
||||||
|
|
||||||
|
@ -530,11 +531,11 @@ class EditorWindow(object):
|
||||||
return None
|
return None
|
||||||
head, tail = os.path.split(filename)
|
head, tail = os.path.split(filename)
|
||||||
base, ext = os.path.splitext(tail)
|
base, ext = os.path.splitext(tail)
|
||||||
import ClassBrowser
|
from . import ClassBrowser
|
||||||
ClassBrowser.ClassBrowser(self.flist, base, [head])
|
ClassBrowser.ClassBrowser(self.flist, base, [head])
|
||||||
|
|
||||||
def open_path_browser(self, event=None):
|
def open_path_browser(self, event=None):
|
||||||
import PathBrowser
|
from . import PathBrowser
|
||||||
PathBrowser.PathBrowser(self.flist)
|
PathBrowser.PathBrowser(self.flist)
|
||||||
|
|
||||||
def gotoline(self, lineno):
|
def gotoline(self, lineno):
|
||||||
|
@ -860,7 +861,6 @@ class EditorWindow(object):
|
||||||
self.load_extension(name)
|
self.load_extension(name)
|
||||||
except:
|
except:
|
||||||
print("Failed to load extension", repr(name))
|
print("Failed to load extension", repr(name))
|
||||||
import traceback
|
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
|
|
||||||
def get_standard_extension_names(self):
|
def get_standard_extension_names(self):
|
||||||
|
@ -871,7 +871,7 @@ class EditorWindow(object):
|
||||||
mod = __import__(name, globals(), locals(), [])
|
mod = __import__(name, globals(), locals(), [])
|
||||||
except ImportError:
|
except ImportError:
|
||||||
print("\nFailed to import extension: ", name)
|
print("\nFailed to import extension: ", name)
|
||||||
return
|
raise
|
||||||
cls = getattr(mod, name)
|
cls = getattr(mod, name)
|
||||||
keydefs = idleConf.GetExtensionBindings(name)
|
keydefs = idleConf.GetExtensionBindings(name)
|
||||||
if hasattr(cls, "menudefs"):
|
if hasattr(cls, "menudefs"):
|
||||||
|
|
|
@ -5,7 +5,7 @@ import tkMessageBox
|
||||||
|
|
||||||
class FileList:
|
class FileList:
|
||||||
|
|
||||||
from EditorWindow import EditorWindow # class variable, may be overridden
|
from .EditorWindow import EditorWindow # class variable, may be overridden
|
||||||
# e.g. by PyShellFileList
|
# e.g. by PyShellFileList
|
||||||
|
|
||||||
def __init__(self, root):
|
def __init__(self, root):
|
||||||
|
@ -106,7 +106,7 @@ class FileList:
|
||||||
|
|
||||||
|
|
||||||
def _test():
|
def _test():
|
||||||
from EditorWindow import fixwordbreaks
|
from .EditorWindow import fixwordbreaks
|
||||||
import sys
|
import sys
|
||||||
root = Tk()
|
root = Tk()
|
||||||
fixwordbreaks(root)
|
fixwordbreaks(root)
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
# * Fancy comments, like this bulleted list, arent handled :-)
|
# * Fancy comments, like this bulleted list, arent handled :-)
|
||||||
|
|
||||||
import re
|
import re
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
class FormatParagraph:
|
class FormatParagraph:
|
||||||
|
|
||||||
|
|
|
@ -63,7 +63,7 @@ class GrepDialog(SearchDialogBase):
|
||||||
if not path:
|
if not path:
|
||||||
self.top.bell()
|
self.top.bell()
|
||||||
return
|
return
|
||||||
from OutputWindow import OutputWindow
|
from .OutputWindow import OutputWindow
|
||||||
save = sys.stdout
|
save = sys.stdout
|
||||||
try:
|
try:
|
||||||
sys.stdout = OutputWindow(self.flist)
|
sys.stdout = OutputWindow(self.flist)
|
||||||
|
|
|
@ -10,7 +10,7 @@ structure of code, used by extensions to help the user.
|
||||||
|
|
||||||
import string
|
import string
|
||||||
import keyword
|
import keyword
|
||||||
import PyParse
|
from . import PyParse
|
||||||
|
|
||||||
class HyperParser:
|
class HyperParser:
|
||||||
|
|
||||||
|
|
|
@ -14,9 +14,9 @@ import tkFileDialog
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
import re
|
import re
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from SimpleDialog import SimpleDialog
|
from .SimpleDialog import SimpleDialog
|
||||||
|
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
try:
|
try:
|
||||||
from codecs import BOM_UTF8
|
from codecs import BOM_UTF8
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
class History:
|
class History:
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
# XXX TO DO:
|
# XXX TO DO:
|
||||||
# - for classes/modules, add "open source" to object browser
|
# - for classes/modules, add "open source" to object browser
|
||||||
|
|
||||||
from TreeWidget import TreeItem, TreeNode, ScrolledCanvas
|
from .TreeWidget import TreeItem, TreeNode, ScrolledCanvas
|
||||||
|
|
||||||
from repr import Repr
|
from repr import Repr
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from EditorWindow import EditorWindow
|
from .EditorWindow import EditorWindow
|
||||||
import re
|
import re
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
import IOBinding
|
from . import IOBinding
|
||||||
|
|
||||||
class OutputWindow(EditorWindow):
|
class OutputWindow(EditorWindow):
|
||||||
|
|
||||||
|
|
|
@ -5,8 +5,8 @@ paren. Paren here is used generically; the matching applies to
|
||||||
parentheses, square brackets, and curly braces.
|
parentheses, square brackets, and curly braces.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from HyperParser import HyperParser
|
from .HyperParser import HyperParser
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
_openers = {')':'(',']':'[','}':'{'}
|
_openers = {')':'(',']':'[','}':'{'}
|
||||||
CHECK_DELAY = 100 # miliseconds
|
CHECK_DELAY = 100 # miliseconds
|
||||||
|
|
|
@ -2,8 +2,8 @@ import os
|
||||||
import sys
|
import sys
|
||||||
import imp
|
import imp
|
||||||
|
|
||||||
from TreeWidget import TreeItem
|
from .TreeWidget import TreeItem
|
||||||
from ClassBrowser import ClassBrowser, ModuleBrowserTreeItem
|
from .ClassBrowser import ClassBrowser, ModuleBrowserTreeItem
|
||||||
|
|
||||||
class PathBrowser(ClassBrowser):
|
class PathBrowser(ClassBrowser):
|
||||||
|
|
||||||
|
@ -86,7 +86,7 @@ class DirBrowserTreeItem(TreeItem):
|
||||||
return sorted
|
return sorted
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
import PyShell
|
from . import PyShell
|
||||||
PathBrowser(PyShell.flist)
|
PathBrowser(PyShell.flist)
|
||||||
if sys.stdin is sys.__stdin__:
|
if sys.stdin is sys.__stdin__:
|
||||||
mainloop()
|
mainloop()
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
from WidgetRedirector import WidgetRedirector
|
from .WidgetRedirector import WidgetRedirector
|
||||||
from Delegator import Delegator
|
from .Delegator import Delegator
|
||||||
|
|
||||||
class Percolator:
|
class Percolator:
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@ import time
|
||||||
import threading
|
import threading
|
||||||
import traceback
|
import traceback
|
||||||
import types
|
import types
|
||||||
import macosxSupport
|
|
||||||
|
|
||||||
import linecache
|
import linecache
|
||||||
from code import InteractiveInterpreter
|
from code import InteractiveInterpreter
|
||||||
|
@ -24,17 +23,17 @@ except ImportError:
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
|
|
||||||
from EditorWindow import EditorWindow, fixwordbreaks
|
from .EditorWindow import EditorWindow, fixwordbreaks
|
||||||
from FileList import FileList
|
from .FileList import FileList
|
||||||
from ColorDelegator import ColorDelegator
|
from .ColorDelegator import ColorDelegator
|
||||||
from UndoDelegator import UndoDelegator
|
from .UndoDelegator import UndoDelegator
|
||||||
from OutputWindow import OutputWindow
|
from .OutputWindow import OutputWindow
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
import idlever
|
from . import idlever
|
||||||
|
from . import rpc
|
||||||
import rpc
|
from . import Debugger
|
||||||
import Debugger
|
from . import RemoteDebugger
|
||||||
import RemoteDebugger
|
from . import macosxSupport
|
||||||
|
|
||||||
IDENTCHARS = string.ascii_letters + string.digits + "_"
|
IDENTCHARS = string.ascii_letters + string.digits + "_"
|
||||||
LOCALHOST = '127.0.0.1'
|
LOCALHOST = '127.0.0.1'
|
||||||
|
@ -542,13 +541,13 @@ class ModifiedInterpreter(InteractiveInterpreter):
|
||||||
return
|
return
|
||||||
|
|
||||||
def remote_stack_viewer(self):
|
def remote_stack_viewer(self):
|
||||||
import RemoteObjectBrowser
|
from . import RemoteObjectBrowser
|
||||||
oid = self.rpcclt.remotequeue("exec", "stackviewer", ("flist",), {})
|
oid = self.rpcclt.remotequeue("exec", "stackviewer", ("flist",), {})
|
||||||
if oid is None:
|
if oid is None:
|
||||||
self.tkconsole.root.bell()
|
self.tkconsole.root.bell()
|
||||||
return
|
return
|
||||||
item = RemoteObjectBrowser.StubObjectTreeItem(self.rpcclt, oid)
|
item = RemoteObjectBrowser.StubObjectTreeItem(self.rpcclt, oid)
|
||||||
from TreeWidget import ScrolledCanvas, TreeNode
|
from .TreeWidget import ScrolledCanvas, TreeNode
|
||||||
top = Toplevel(self.tkconsole.root)
|
top = Toplevel(self.tkconsole.root)
|
||||||
theme = idleConf.GetOption('main','Theme','name')
|
theme = idleConf.GetOption('main','Theme','name')
|
||||||
background = idleConf.GetHighlight(theme, 'normal')['background']
|
background = idleConf.GetHighlight(theme, 'normal')['background']
|
||||||
|
@ -588,7 +587,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
|
||||||
self.save_warnings_filters = warnings.filters[:]
|
self.save_warnings_filters = warnings.filters[:]
|
||||||
warnings.filterwarnings(action="error", category=SyntaxWarning)
|
warnings.filterwarnings(action="error", category=SyntaxWarning)
|
||||||
if isinstance(source, types.UnicodeType):
|
if isinstance(source, types.UnicodeType):
|
||||||
import IOBinding
|
from . import IOBinding
|
||||||
try:
|
try:
|
||||||
source = source.encode(IOBinding.encoding)
|
source = source.encode(IOBinding.encoding)
|
||||||
except UnicodeError:
|
except UnicodeError:
|
||||||
|
@ -677,7 +676,7 @@ class ModifiedInterpreter(InteractiveInterpreter):
|
||||||
|
|
||||||
def checklinecache(self):
|
def checklinecache(self):
|
||||||
c = linecache.cache
|
c = linecache.cache
|
||||||
for key in c.keys():
|
for key in list(c.keys()):
|
||||||
if key[:1] + key[-1:] != "<>":
|
if key[:1] + key[-1:] != "<>":
|
||||||
del c[key]
|
del c[key]
|
||||||
|
|
||||||
|
@ -798,7 +797,7 @@ class PyShell(OutputWindow):
|
||||||
|
|
||||||
|
|
||||||
# New classes
|
# New classes
|
||||||
from IdleHistory import History
|
from .IdleHistory import History
|
||||||
|
|
||||||
def __init__(self, flist=None):
|
def __init__(self, flist=None):
|
||||||
if use_subprocess:
|
if use_subprocess:
|
||||||
|
@ -837,7 +836,7 @@ class PyShell(OutputWindow):
|
||||||
self.save_stdout = sys.stdout
|
self.save_stdout = sys.stdout
|
||||||
self.save_stderr = sys.stderr
|
self.save_stderr = sys.stderr
|
||||||
self.save_stdin = sys.stdin
|
self.save_stdin = sys.stdin
|
||||||
import IOBinding
|
from . import IOBinding
|
||||||
self.stdout = PseudoFile(self, "stdout", IOBinding.encoding)
|
self.stdout = PseudoFile(self, "stdout", IOBinding.encoding)
|
||||||
self.stderr = PseudoFile(self, "stderr", IOBinding.encoding)
|
self.stderr = PseudoFile(self, "stderr", IOBinding.encoding)
|
||||||
self.console = PseudoFile(self, "console", IOBinding.encoding)
|
self.console = PseudoFile(self, "console", IOBinding.encoding)
|
||||||
|
@ -1007,7 +1006,7 @@ class PyShell(OutputWindow):
|
||||||
if len(line) == 0: # may be EOF if we quit our mainloop with Ctrl-C
|
if len(line) == 0: # may be EOF if we quit our mainloop with Ctrl-C
|
||||||
line = "\n"
|
line = "\n"
|
||||||
if isinstance(line, str):
|
if isinstance(line, str):
|
||||||
import IOBinding
|
from . import IOBinding
|
||||||
try:
|
try:
|
||||||
line = line.encode(IOBinding.encoding)
|
line = line.encode(IOBinding.encoding)
|
||||||
except UnicodeError:
|
except UnicodeError:
|
||||||
|
@ -1195,7 +1194,7 @@ class PyShell(OutputWindow):
|
||||||
"(sys.last_traceback is not defined)",
|
"(sys.last_traceback is not defined)",
|
||||||
master=self.text)
|
master=self.text)
|
||||||
return
|
return
|
||||||
from StackViewer import StackBrowser
|
from .StackViewer import StackBrowser
|
||||||
sv = StackBrowser(self.root, self.flist)
|
sv = StackBrowser(self.root, self.flist)
|
||||||
|
|
||||||
def view_restart_mark(self, event=None):
|
def view_restart_mark(self, event=None):
|
||||||
|
|
|
@ -22,8 +22,8 @@ barrier, in particular frame and traceback objects.
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import types
|
import types
|
||||||
import rpc
|
from . import rpc
|
||||||
import Debugger
|
from . import Debugger
|
||||||
|
|
||||||
debugging = 0
|
debugging = 0
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import rpc
|
from . import rpc
|
||||||
|
|
||||||
def remote_object_tree_item(item):
|
def remote_object_tree_item(item):
|
||||||
wrapper = WrappedObjectTreeItem(item)
|
wrapper = WrappedObjectTreeItem(item)
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
import SearchEngine
|
|
||||||
from SearchDialogBase import SearchDialogBase
|
from . import SearchEngine
|
||||||
|
from .SearchDialogBase import SearchDialogBase
|
||||||
|
|
||||||
def replace(text):
|
def replace(text):
|
||||||
root = text._root()
|
root = text._root()
|
||||||
|
|
|
@ -23,9 +23,9 @@ import string
|
||||||
import tabnanny
|
import tabnanny
|
||||||
import tokenize
|
import tokenize
|
||||||
import tkMessageBox
|
import tkMessageBox
|
||||||
import PyShell
|
from . import PyShell
|
||||||
|
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
IDENTCHARS = string.ascii_letters + string.digits + "_"
|
IDENTCHARS = string.ascii_letters + string.digits + "_"
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
import SearchEngine
|
|
||||||
from SearchDialogBase import SearchDialogBase
|
|
||||||
|
|
||||||
|
from . import SearchEngine
|
||||||
|
from .SearchDialogBase import SearchDialogBase
|
||||||
|
|
||||||
def _setup(text):
|
def _setup(text):
|
||||||
root = text._root()
|
root = text._root()
|
||||||
|
|
|
@ -2,8 +2,8 @@ import os
|
||||||
import sys
|
import sys
|
||||||
import linecache
|
import linecache
|
||||||
|
|
||||||
from TreeWidget import TreeNode, TreeItem, ScrolledCanvas
|
from .TreeWidget import TreeNode, TreeItem, ScrolledCanvas
|
||||||
from ObjectBrowser import ObjectTreeItem, make_objecttreeitem
|
from .ObjectBrowser import ObjectTreeItem, make_objecttreeitem
|
||||||
|
|
||||||
def StackBrowser(root, flist=None, tb=None, top=None):
|
def StackBrowser(root, flist=None, tb=None, top=None):
|
||||||
if top is None:
|
if top is None:
|
||||||
|
|
|
@ -19,8 +19,8 @@ import sys
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
import imp
|
import imp
|
||||||
|
|
||||||
import ZoomHeight
|
from . import ZoomHeight
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
|
|
||||||
ICONDIR = "Icons"
|
ICONDIR = "Icons"
|
||||||
|
|
||||||
|
@ -453,7 +453,7 @@ class ScrolledCanvas:
|
||||||
# Testing functions
|
# Testing functions
|
||||||
|
|
||||||
def test():
|
def test():
|
||||||
import PyShell
|
from . import PyShell
|
||||||
root = Toplevel(PyShell.root)
|
root = Toplevel(PyShell.root)
|
||||||
root.configure(bd=0, bg="yellow")
|
root.configure(bd=0, bg="yellow")
|
||||||
root.focus_set()
|
root.focus_set()
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import sys
|
import sys
|
||||||
import string
|
import string
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
from Delegator import Delegator
|
|
||||||
|
from .Delegator import Delegator
|
||||||
|
|
||||||
#$ event <<redo>>
|
#$ event <<redo>>
|
||||||
#$ win <Control-y>
|
#$ win <Control-y>
|
||||||
|
@ -337,7 +338,7 @@ class CommandSequence(Command):
|
||||||
return self.depth
|
return self.depth
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
from Percolator import Percolator
|
from .Percolator import Percolator
|
||||||
root = Tk()
|
root = Tk()
|
||||||
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
|
root.wm_protocol("WM_DELETE_WINDOW", root.quit)
|
||||||
text = Text()
|
text = Text()
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
|
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
import macosxSupport
|
|
||||||
|
from . import macosxSupport
|
||||||
|
|
||||||
class ZoomHeight:
|
class ZoomHeight:
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,9 @@
|
||||||
|
|
||||||
from Tkinter import *
|
from Tkinter import *
|
||||||
import os
|
import os
|
||||||
import textView
|
|
||||||
import idlever
|
from . import textView
|
||||||
|
from . import idlever
|
||||||
|
|
||||||
class AboutDialog(Toplevel):
|
class AboutDialog(Toplevel):
|
||||||
"""Modal about dialog for idle
|
"""Modal about dialog for idle
|
||||||
|
@ -157,7 +158,7 @@ if __name__ == '__main__':
|
||||||
# test the dialog
|
# test the dialog
|
||||||
root = Tk()
|
root = Tk()
|
||||||
def run():
|
def run():
|
||||||
import aboutDialog
|
from . import aboutDialog
|
||||||
aboutDialog.AboutDialog(root, 'About')
|
aboutDialog.AboutDialog(root, 'About')
|
||||||
Button(root, text='Dialog', command=run).pack()
|
Button(root, text='Dialog', command=run).pack()
|
||||||
root.mainloop()
|
root.mainloop()
|
||||||
|
|
|
@ -13,12 +13,12 @@ from Tkinter import *
|
||||||
import tkMessageBox, tkColorChooser, tkFont
|
import tkMessageBox, tkColorChooser, tkFont
|
||||||
import copy
|
import copy
|
||||||
|
|
||||||
from configHandler import idleConf
|
from .configHandler import idleConf
|
||||||
from dynOptionMenuWidget import DynOptionMenu
|
from .dynOptionMenuWidget import DynOptionMenu
|
||||||
from tabpage import TabPageSet
|
from .tabpage import TabPageSet
|
||||||
from keybindingDialog import GetKeysDialog
|
from .keybindingDialog import GetKeysDialog
|
||||||
from configSectionNameDialog import GetCfgSectionNameDialog
|
from .configSectionNameDialog import GetCfgSectionNameDialog
|
||||||
from configHelpSourceEdit import GetHelpSourceDialog
|
from .configHelpSourceEdit import GetHelpSourceDialog
|
||||||
|
|
||||||
class ConfigDialog(Toplevel):
|
class ConfigDialog(Toplevel):
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,9 @@ configuration problem notification and resolution.
|
||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import macosxSupport
|
|
||||||
from ConfigParser import ConfigParser, NoOptionError, NoSectionError
|
from . import macosxSupport
|
||||||
|
from .ConfigParser import ConfigParser, NoOptionError, NoSectionError
|
||||||
|
|
||||||
class InvalidConfigType(Exception): pass
|
class InvalidConfigType(Exception): pass
|
||||||
class InvalidConfigSet(Exception): pass
|
class InvalidConfigSet(Exception): pass
|
||||||
|
|
|
@ -3,7 +3,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
# IDLE is not installed, but maybe PyShell is on sys.path:
|
# IDLE is not installed, but maybe PyShell is on sys.path:
|
||||||
try:
|
try:
|
||||||
import PyShell
|
from . import PyShell
|
||||||
except ImportError:
|
except ImportError:
|
||||||
raise
|
raise
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -3,7 +3,7 @@ try:
|
||||||
except ImportError:
|
except ImportError:
|
||||||
# IDLE is not installed, but maybe PyShell is on sys.path:
|
# IDLE is not installed, but maybe PyShell is on sys.path:
|
||||||
try:
|
try:
|
||||||
import PyShell
|
from . import PyShell
|
||||||
except ImportError:
|
except ImportError:
|
||||||
raise
|
raise
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -47,10 +47,10 @@ def overrideRootMenu(root, flist):
|
||||||
# Due to a (mis-)feature of TkAqua the user will also see an empty Help
|
# Due to a (mis-)feature of TkAqua the user will also see an empty Help
|
||||||
# menu.
|
# menu.
|
||||||
from Tkinter import Menu, Text, Text
|
from Tkinter import Menu, Text, Text
|
||||||
from EditorWindow import prepstr, get_accelerator
|
from .EditorWindow import prepstr, get_accelerator
|
||||||
import Bindings
|
from . import Bindings
|
||||||
import WindowList
|
from . import WindowList
|
||||||
from MultiCall import MultiCallCreator
|
from .MultiCall import MultiCallCreator
|
||||||
|
|
||||||
menubar = Menu(root)
|
menubar = Menu(root)
|
||||||
root.configure(menu=menubar)
|
root.configure(menu=menubar)
|
||||||
|
@ -73,11 +73,11 @@ def overrideRootMenu(root, flist):
|
||||||
menubar.add_cascade(label='IDLE', menu=menu)
|
menubar.add_cascade(label='IDLE', menu=menu)
|
||||||
|
|
||||||
def about_dialog(event=None):
|
def about_dialog(event=None):
|
||||||
import aboutDialog
|
from . import aboutDialog
|
||||||
aboutDialog.AboutDialog(root, 'About IDLE')
|
aboutDialog.AboutDialog(root, 'About IDLE')
|
||||||
|
|
||||||
def config_dialog(event=None):
|
def config_dialog(event=None):
|
||||||
import configDialog
|
from . import configDialog
|
||||||
configDialog.ConfigDialog(root, 'Settings')
|
configDialog.ConfigDialog(root, 'Settings')
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,13 +8,13 @@ import thread
|
||||||
import threading
|
import threading
|
||||||
import Queue
|
import Queue
|
||||||
|
|
||||||
import CallTips
|
from . import CallTips
|
||||||
import AutoComplete
|
from . import AutoComplete
|
||||||
|
|
||||||
import RemoteDebugger
|
from . import RemoteDebugger
|
||||||
import RemoteObjectBrowser
|
from . import RemoteObjectBrowser
|
||||||
import StackViewer
|
from . import StackViewer
|
||||||
import rpc
|
from . import rpc
|
||||||
|
|
||||||
import __main__
|
import __main__
|
||||||
|
|
||||||
|
@ -243,7 +243,7 @@ class MyHandler(rpc.RPCHandler):
|
||||||
sys.stdin = self.console = self.get_remote_proxy("stdin")
|
sys.stdin = self.console = self.get_remote_proxy("stdin")
|
||||||
sys.stdout = self.get_remote_proxy("stdout")
|
sys.stdout = self.get_remote_proxy("stdout")
|
||||||
sys.stderr = self.get_remote_proxy("stderr")
|
sys.stderr = self.get_remote_proxy("stderr")
|
||||||
import IOBinding
|
from . import IOBinding
|
||||||
sys.stdin.encoding = sys.stdout.encoding = \
|
sys.stdin.encoding = sys.stdout.encoding = \
|
||||||
sys.stderr.encoding = IOBinding.encoding
|
sys.stderr.encoding = IOBinding.encoding
|
||||||
self.interp = self.get_remote_proxy("interp")
|
self.interp = self.get_remote_proxy("interp")
|
||||||
|
|
|
@ -65,12 +65,14 @@ def capture_server(evt, buf):
|
||||||
else:
|
else:
|
||||||
n = 200
|
n = 200
|
||||||
while n > 0:
|
while n > 0:
|
||||||
data = conn.recv(10)
|
r, w, e = select.select([conn], [], [])
|
||||||
assert isinstance(data, bytes)
|
if r:
|
||||||
# keep everything except for the newline terminator
|
data = conn.recv(10)
|
||||||
buf.write(data.replace(b'\n', b''))
|
assert isinstance(data, bytes)
|
||||||
if b'\n' in data:
|
# keep everything except for the newline terminator
|
||||||
break
|
buf.write(data.replace(b'\n', b''))
|
||||||
|
if b'\n' in data:
|
||||||
|
break
|
||||||
n -= 1
|
n -= 1
|
||||||
time.sleep(0.01)
|
time.sleep(0.01)
|
||||||
|
|
||||||
|
|
|
@ -55,10 +55,9 @@ class UnicodeTest(
|
||||||
def test_literals(self):
|
def test_literals(self):
|
||||||
self.assertEqual('\xff', '\u00ff')
|
self.assertEqual('\xff', '\u00ff')
|
||||||
self.assertEqual('\uffff', '\U0000ffff')
|
self.assertEqual('\uffff', '\U0000ffff')
|
||||||
self.assertRaises((UnicodeError, SyntaxError), eval, '\'\\Ufffffffe\'')
|
self.assertRaises(SyntaxError, eval, '\'\\Ufffffffe\'')
|
||||||
self.assertRaises((UnicodeError, SyntaxError), eval, '\'\\Uffffffff\'')
|
self.assertRaises(SyntaxError, eval, '\'\\Uffffffff\'')
|
||||||
self.assertRaises((UnicodeError, SyntaxError),
|
self.assertRaises(SyntaxError, eval, '\'\\U%08x\'' % 0x110000)
|
||||||
eval, '\'\\U%08x\'' % 0x110000)
|
|
||||||
|
|
||||||
def test_repr(self):
|
def test_repr(self):
|
||||||
if not sys.platform.startswith('java'):
|
if not sys.platform.startswith('java'):
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
register(search_function) -> None
|
register(search_function) -> None
|
||||||
|
|
||||||
lookup(encoding) -> (encoder, decoder, stream_reader, stream_writer)
|
lookup(encoding) -> CodecInfo object
|
||||||
|
|
||||||
The builtin Unicode codecs use the following interface:
|
The builtin Unicode codecs use the following interface:
|
||||||
|
|
||||||
|
@ -45,7 +45,8 @@ PyDoc_STRVAR(register__doc__,
|
||||||
\n\
|
\n\
|
||||||
Register a codec search function. Search functions are expected to take\n\
|
Register a codec search function. Search functions are expected to take\n\
|
||||||
one argument, the encoding name in all lower case letters, and return\n\
|
one argument, the encoding name in all lower case letters, and return\n\
|
||||||
a tuple of functions (encoder, decoder, stream_reader, stream_writer).");
|
a tuple of functions (encoder, decoder, stream_reader, stream_writer)\n\
|
||||||
|
(or a CodecInfo object).");
|
||||||
|
|
||||||
static
|
static
|
||||||
PyObject *codec_register(PyObject *self, PyObject *search_function)
|
PyObject *codec_register(PyObject *self, PyObject *search_function)
|
||||||
|
@ -57,10 +58,10 @@ PyObject *codec_register(PyObject *self, PyObject *search_function)
|
||||||
}
|
}
|
||||||
|
|
||||||
PyDoc_STRVAR(lookup__doc__,
|
PyDoc_STRVAR(lookup__doc__,
|
||||||
"lookup(encoding) -> (encoder, decoder, stream_reader, stream_writer)\n\
|
"lookup(encoding) -> CodecInfo\n\
|
||||||
\n\
|
\n\
|
||||||
Looks up a codec tuple in the Python codec registry and returns\n\
|
Looks up a codec tuple in the Python codec registry and returns\n\
|
||||||
a tuple of functions.");
|
a tuple of function (or a CodecInfo object).");
|
||||||
|
|
||||||
static
|
static
|
||||||
PyObject *codec_lookup(PyObject *self, PyObject *args)
|
PyObject *codec_lookup(PyObject *self, PyObject *args)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue