[Python-checkins] cpython (merge 3.6 -> default): Merge with 3.6

terry.reedy python-checkins at python.org
Tue Dec 27 00:05:55 EST 2016


https://hg.python.org/cpython/rev/5006bf5b7735
changeset:   105832:5006bf5b7735
parent:      105830:f35c3b0b6eda
parent:      105831:a48cc85e5706
user:        Terry Jan Reedy <tjreedy at udel.edu>
date:        Tue Dec 27 00:05:41 2016 -0500
summary:
  Merge with 3.6

files:
  Lib/idlelib/colorizer.py |  13 ++++++++++---
  1 files changed, 10 insertions(+), 3 deletions(-)


diff --git a/Lib/idlelib/colorizer.py b/Lib/idlelib/colorizer.py
--- a/Lib/idlelib/colorizer.py
+++ b/Lib/idlelib/colorizer.py
@@ -21,7 +21,8 @@
     # 1st 'file' colorized normal, 2nd as builtin, 3rd as string
     builtin = r"([^.'\"\\#]\b|^)" + any("BUILTIN", builtinlist) + r"\b"
     comment = any("COMMENT", [r"#[^\n]*"])
-    stringprefix = r"(\br|u|ur|R|U|UR|Ur|uR|b|B|br|Br|bR|BR|rb|rB|Rb|RB)?"
+    stringprefix = (r"(\br|R|u|U|f|F|fr|Fr|fR|FR|rf|rF|Rf|RF"
+                    "|b|B|br|Br|bR|BR|rb|rB|Rb|RB)?")
     sqstring = stringprefix + r"'[^'\\\n]*(\\.[^'\\\n]*)*'?"
     dqstring = stringprefix + r'"[^"\\\n]*(\\.[^"\\\n]*)*"?'
     sq3string = stringprefix + r"'''[^'\\]*((\\.|'(?!''))[^'\\]*)*(''')?"
@@ -261,8 +262,14 @@
     top = Toplevel(parent)
     top.title("Test ColorDelegator")
     x, y = map(int, parent.geometry().split('+')[1:])
-    top.geometry("200x100+%d+%d" % (x + 250, y + 175))
-    source = "if somename: x = 'abc' # comment\nprint\n"
+    top.geometry("600x200+%d+%d" % (x + 100, y + 175))
+    source = ("# Following has syntax errors\n"
+        "if True: then int 1\nelif False: print 0\nelse: float(None)\n"
+        "#unicode and byte strings, valid prefixes should be colored\n"
+        "'x', '''x''', \"x\", \"\"\"x\"\"\"\n"
+        "r'x', u'x', R'x', U'x', f'x', F'x', ur'is invalid'\n"
+        "fr'x', Fr'x', fR'x', FR'x', rf'x', rF'x', Rf'x', RF'x'\n"
+        "b'x',B'x', br'x',Br'x',bR'x',BR'x', rb'x'.rB'x',Rb'x',RB'x'\n")
     text = Text(top, background="white")
     text.pack(expand=1, fill="both")
     text.insert("insert", source)

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list