language-python icon indicating copy to clipboard operation
language-python copied to clipboard

Unclosed bracket in triple-quoted raw string breaks highlighting

Open aroben opened this issue 11 years ago • 5 comments

This is basically the same as #37 except for triple-quoted raw strings.

screen shot 2014-11-21 at 4 38 42 pm

#foo above should be highlighted as a comment. Instead, it and everything else that comes later in the file will get highlighted as if it were a regex. The grammar doesn't see that the raw string got closed at the closing triple-quote, so is happily consuming everything into the string.

The rules for triple-quoted strings use begin/end to make them work over multiple lines. We could fix the single-line case by adding near-duplicate match rules ("match": "r\"\"\"(.*)\"\"\" e.g.). But the multi-line case would still be broken:

screen shot 2014-11-21 at 4 40 56 pm

I'm not sure how to fix the multi-line case given the way grammars currently work.

aroben avatar Nov 21 '14 21:11 aroben

Highlighting gets screwy with an open parens ( too. Related?

image

southgate avatar Jan 13 '15 23:01 southgate

Yeah almost certainly the same issue.

aroben avatar Jan 14 '15 13:01 aroben

I'm not sure how to fix the multi-line case given the way grammars currently work.

Is it even possible? If it's not, maybe we should fix this instead of supporting regular expressions on several lines in triple-quoted strings?

pchaigno avatar Sep 07 '15 11:09 pchaigno

Other odd behaviour breaking the block comment :
broken

Without quotes, SELECT (uppercase only) keyword does not break block comments, but seams to trigger formating although inside block comments : broken2 broken3

Would it be related ?

Fuzl avatar Sep 16 '16 19:09 Fuzl

Following https://github.com/atom/language-python/issues/109 I fetched package magicpython and deactivated language-python. It all works correctly now. ;o)

Fuzl avatar Sep 16 '16 20:09 Fuzl