37,741
社区成员
发帖
与我相关
我的任务
分享--- formatter.py 2011-03-19 18:51:18 +0800
+++ formatter.py 2012-04-26 11:16:33 +0800
@@ -290,4 +290,8 @@
# A Formatter that knows how to format Python source
from keyword import iskeyword, kwlist
+try:
+ import builtins
+except:
+ import __builtin__ as builtins
wordstarts = '_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
@@ -314,4 +318,5 @@
STYLE_INDENTGUIDE = "Indent guide"
STYLE_SELECTION = "Selection"
+STYLE_BUILTINS = "Builtins"
STRING_STYLES = [STYLE_STRING, STYLE_SQSTRING, STYLE_TQSSTRING, STYLE_TQDSTRING, STYLE_STRINGEOL]
@@ -336,4 +341,5 @@
(STYLE_OPERATOR, (0, 0, 200, 0, 0x000000), CLR_INVALID, scintillacon.SCE_P_OPERATOR),
(STYLE_IDENTIFIER, (0, 0, 200, 0, 0x000000), CLR_INVALID, scintillacon.SCE_P_IDENTIFIER ),
+ (STYLE_BUILTINS, (0, 0, 200, 0, 0x800080), CLR_INVALID, scintillacon.SCE_P_WORD2),
]
@@ -385,4 +391,6 @@
elif iskeyword(word):
attr = STYLE_KEYWORD
+ elif word in vars(builtins):
+ attr = STYLE_BUILTINS
self.ColorSeg(start, end, attr)
return word
@@ -573,4 +581,6 @@
keywords = ' '.join(kwlist)
sc.SCISetKeywords(keywords)
+ keywords = ' '.join(dir(builtins))
+ sc.SCISetKeywords(keywords, 1)
class BuiltinPythonSourceFormatter(BuiltinSourceFormatter):