atom / language-python

Python package for Atom
Other
190 stars 146 forks source link

Using a variable as a default in a function definition causes inconsistent highlighting #278

Open TheElementalOfDestruction opened 5 years ago

TheElementalOfDestruction commented 5 years ago

Prerequisites

Description

Using a variable as a default in a function definition causes inconsistent highlighting of variable name. Specifically, the first letter or the variable will not be highlighted.

Steps to Reproduce

  1. Open new file
  2. Set language to Python
  3. Enter def test(test_var = variable):

Expected behavior: variable should be highlighted completely.

Actual behavior: ariable is highlighted while v is not.

Reproduces how often: 100%

Versions

Windows 10 C:\WINDOWS\system32>atom --version

Atom : 1.31.1 Electron: 2.0.7 Chrome : 61.0.3163.100 Node : 8.9.3

C:\WINDOWS\system32>apm --version apm 2.1.1 npm 6.2.0 node 8.9.3 x64 atom 1.31.1 python 3.6.4 git 2.17.0 visual studio

Additional Information

None

TheElementalOfDestruction commented 5 years ago

Package: language-python 0.51.4

TheElementalOfDestruction commented 5 years ago

Still exists in 0.51.6

TheElementalOfDestruction commented 5 years ago

Here is a screenshot showing the problem along with the associated styles and stuff that create the problem:

image

TheElementalOfDestruction commented 5 years ago

Hopefully I can get someone to look at this soon

rsese commented 5 years ago

Sorry for the delay @TheElementalOfCreation - we're transitioning over to supporting the Tree-sitter grammars only for built-in languages, does this still reproduce with Tree-sitter enabled?

TheElementalOfDestruction commented 5 years ago

Tree sitter seems to fix it, but at the same time it breaks a lot of other stuff. The "other stuff" was already discussed in another issue though.

TheElementalOfDestruction commented 5 years ago

https://github.com/atom/language-python/issues/281 is the issue I was referring to