diff --git a/PythonImproved.YAML-tmLanguage b/PythonImproved.YAML-tmLanguage
index 388b2f1..74c3660 100644
--- a/PythonImproved.YAML-tmLanguage
+++ b/PythonImproved.YAML-tmLanguage
@@ -73,14 +73,14 @@ patterns:
match: \b(None|True|False|Ellipsis|NotImplemented)\b
- name: storage.modifier.declaration.python
- match: \b(global|nonlocal)\b
+ match: \b(global|nonlocal|async)\b
- name: keyword.control.import.python
match: \b(?:(import|from|as))\b
- comment: keywords that delimit flow blocks or alter flow from within a block
name: keyword.control.flow.python
- match: \b(elif|else|except|finally|for|if|try|while|with|break|continue|pass|raise|return|yield)\b
+ match: \b(elif|else|except|finally|for|if|try|while|with|break|continue|pass|raise|return|yield|await)\b
- comment: keyword operators that evaluate to True or False
name: keyword.operator.logical.python
@@ -97,10 +97,10 @@ patterns:
match: <\=|>\=|\=\=|<|>|\!\=
- name: keyword.operator.assignment.augmented.python
- match: \+\=|-\=|\*\=|/\=|//\=|%\=|&\=|\|\=|\^\=|>>\=|<<\=|\*\*\=
+ match: \+\=|-\=|\*\=|/\=|//\=|%\=|&\=|\|\=|\^\=|>>\=|<<\=|\*\*\=|@\=
- name: keyword.operator.arithmetic.python
- match: \+|\-|\*|\*\*|/|//|%|<<|>>|&|\||\^|~
+ match: \+|\-|\*|\*\*|/|//|%|<<|>>|&|\||\^|~|(?!^)@
- name: keyword.operator.assignment.python
match: \=
@@ -622,7 +622,7 @@ repository:
illegal_names:
name: invalid.illegal.name.python
- match: \b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b
+ match: \b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield|async|await)\b
keyword_arguments:
begin: \b([a-zA-Z_][a-zA-Z_0-9]*)\s*(=)(?!=)
diff --git a/PythonImproved.tmLanguage b/PythonImproved.tmLanguage
index b1aad9d..281bd20 100644
--- a/PythonImproved.tmLanguage
+++ b/PythonImproved.tmLanguage
@@ -181,7 +181,7 @@
match
- \b(global|nonlocal)\b
+ \b(global|nonlocal|async)\b
name
storage.modifier.declaration.python
@@ -195,7 +195,7 @@
comment
keywords that delimit flow blocks or alter flow from within a block
match
- \b(elif|else|except|finally|for|if|try|while|with|break|continue|pass|raise|return|yield)\b
+ \b(elif|else|except|finally|for|if|try|while|with|break|continue|pass|raise|return|yield|await)\b
name
keyword.control.flow.python
@@ -229,13 +229,13 @@
match
- \+\=|-\=|\*\=|/\=|//\=|%\=|&\=|\|\=|\^\=|>>\=|<<\=|\*\*\=
+ \+\=|-\=|\*\=|/\=|//\=|%\=|&\=|\|\=|\^\=|>>\=|<<\=|\*\*\=|@\=
name
keyword.operator.assignment.augmented.python
match
- \+|\-|\*|\*\*|/|//|%|<<|>>|&|\||\^|~
+ \+|\-|\*|\*\*|/|//|%|<<|>>|&|\||\^|~|(?!^)@
name
keyword.operator.arithmetic.python
@@ -1858,7 +1858,7 @@
illegal_names
match
- \b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b
+ \b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield|async|await)\b
name
invalid.illegal.name.python