From: Tim Peters Date: Fri, 19 Jan 2001 10:41:49 +0000 (+0000) Subject: Color all word instances of "as" after "import", & on the same line, as if X-Git-Tag: v2.1a1~118 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d5d2cd149f78ba990526096e62df9f380dacfc12;p=thirdparty%2FPython%2Fcpython.git Color all word instances of "as" after "import", & on the same line, as if keywords. Cheap approximation to the truth. --- diff --git a/Tools/idle/ColorDelegator.py b/Tools/idle/ColorDelegator.py index 77edfe858540..6722cfdb8120 100644 --- a/Tools/idle/ColorDelegator.py +++ b/Tools/idle/ColorDelegator.py @@ -28,6 +28,7 @@ def make_pat(): prog = re.compile(make_pat(), re.S) idprog = re.compile(r"\s+(\w+)", re.S) +asprog = re.compile(r".*?\b(as)\b", re.S) class ColorDelegator(Delegator): @@ -35,6 +36,7 @@ class ColorDelegator(Delegator): Delegator.__init__(self) self.prog = prog self.idprog = idprog + self.asprog = asprog def setdelegate(self, delegate): if self.delegate is not None: @@ -198,6 +200,17 @@ class ColorDelegator(Delegator): self.tag_add("DEFINITION", head + "+%dc" % a, head + "+%dc" % b) + elif value == "import": + # color all the "as" words on same line; + # cheap approximation to the truth + while 1: + m1 = self.asprog.match(chars, b) + if not m1: + break + a, b = m1.span(1) + self.tag_add("KEYWORD", + head + "+%dc" % a, + head + "+%dc" % b) m = self.prog.search(chars, m.end()) if "SYNC" in self.tag_names(next + "-1c"): head = next