Skip to content

Commit 51f2dc5

Browse files
committed
gh-151471: IDLE colorizes type as a soft keyword
1 parent 7fb315b commit 51f2dc5

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

Lib/idlelib/colorizer.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ def make_pat():
4242
]) +
4343
r"))"
4444
)
45+
type_softkw = (
46+
r"^[ \t]*" + # at beginning of line + possible indentation
47+
r"(?P<TYPE_SOFTKW>type)" +
48+
r"(?=[ \t]+[A-Za-z_])"
49+
)
4550
lazy_softkw = ( # lazy new in 3.15 (+ 2 lines below).
4651
r"^[ \t]*" + # at beginning of line + possible indentation
4752
r"(?P<LAZY_SOFTKW>lazy)" +
@@ -59,7 +64,7 @@ def make_pat():
5964
dq3string = stringprefix + r'"""[^"\\]*((\\.|"(?!""))[^"\\]*)*(""")?'
6065
string = any("STRING", [sq3string, dq3string, sqstring, dqstring])
6166
prog = re.compile("|".join([
62-
builtin, comment, string, kw,
67+
type_softkw, builtin, comment, string, kw,
6368
match_softkw, case_default,
6469
case_softkw_and_pattern, lazy_softkw,
6570
any("SYNC", [r"\n"]),
@@ -75,6 +80,7 @@ def make_pat():
7580
"CASE_SOFTKW": "KEYWORD",
7681
"CASE_DEFAULT_UNDERSCORE": "KEYWORD",
7782
"CASE_SOFTKW2": "KEYWORD",
83+
"TYPE_SOFTKW": "KEYWORD",
7884
"LAZY_SOFTKW": "KEYWORD",
7985
}
8086

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
IDLE now colorizes ``type`` as a soft keyword when it begins a statement.

0 commit comments

Comments
 (0)