Hack to make this still work with Python 1.5.2.  ;-(
diff --git a/Tools/idle/PyParse.py b/Tools/idle/PyParse.py
index ac68caa..a512356 100644
--- a/Tools/idle/PyParse.py
+++ b/Tools/idle/PyParse.py
@@ -105,6 +105,11 @@
 _tran = string.join(_tran, '')
 del ch
 
+try:
+    UnicodeType = type(unicode(""))
+except NameError:
+    UnicodeType = None
+
 class Parser:
 
     def __init__(self, indentwidth, tabwidth):
@@ -113,7 +118,7 @@
 
     def set_str(self, str):
         assert len(str) == 0 or str[-1] == '\n'
-        if type(str) == type(u""):
+        if type(str) is UnicodeType:
             # The parse functions have no idea what to do with Unicode, so
             # replace all Unicode characters with "x".  This is "safe"
             # so long as the only characters germane to parsing the structure