Skip to content

Conversation

@Exyphrius
Copy link

@Exyphrius Exyphrius commented Jul 28, 2017

Fixed a problem with line 108 by adding a period (.) after the colon (:) and before the asterisk ( * ) where instead of :.* \n matching any number of characters until the end of a line, it was :*\n, which matches any number of colons to the end of a line. This causes the entire few lines after the function definition to be classified as an identifier instead until something breaks that expression.

sentientmachine and others added 14 commits December 25, 2013 13:36
``` @mock(a=["(aa)"])
 def foo(self, str_a='aaa()aaa')
```
think of this case, the old regex `("syn region pythonVars start="(" end=")" contained contains=pythonParameters transparent keepend
)`  will take ) in aaa() as the end of region pythonVars
foo(self, str_a='aaa()aaa):')
on line 108, added a period (.) after the colon (:) and before the asterisk (*) to make the expression :.* (match anything after the colon) instead of :* (match any number of colons)
Previously, this presented an issue where whitespace after a function definition followed by a comment starting with # would cause the entire comment and several following tokens to be classified as identifiers instead of their respective true classes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants