atom / language-python

Python package for Atom
Other
190 stars 146 forks source link

Escaped braces in f-strings not rendered properly #329

Open baloe opened 3 years ago

baloe commented 3 years ago

Description

f-strings with escape braces (i.e. '{{' instead of '{') are not rendered correctly.

Here is a code snippet that shows this glitch:

a=1.1
b='g'
f'{a:{b}}'     # → '1.1'
f'{{{a:{b}}}}' # → '{1.1}'
f'{{{a}}}'     # → '{1.1}'

Here is how it is rendered in atom: Screenshot

I would expect the characters {a:{b}} to be rendered equally in lines 3-4 and {a} rendered non-green, but this does not happen.

Versions

language-python version 0.53.4

darangi commented 3 years ago

What version of atom are you running? I can't reproduce this on atom 1.54.0

baloe commented 3 years ago

What version of atom are you running? I can't reproduce this on atom 1.54.0

I was observing this using atom 1.51.0, but still am after an upgrade to 1.54.0.

baloe commented 3 years ago

When manually changing to CMake Template Python it is rendered better.

This is the autodetected default: Default

This is CMake Template Python highlighting: CMakeTemplatePyton

The former is less bad but not quite brilliant either with those non-printed braces still being green, but this highlighting is unrelated to language-python I think, probably part of language-cmake.