Arguments following a default "()" are not properly colored
Prerequisites
- [x] Put an X between the brackets on this line if you have done all of the following:
- Reproduced the problem in Safe Mode: https://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
- Followed all applicable steps in the debugging guide: https://flight-manual.atom.io/hacking-atom/sections/debugging/
- Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
- Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
- Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages
Description
Function arguments following a default function argument value of "()" are not properly colored. Changing the tuple to a dictionary or a list do not produce the issue.
Steps to Reproduce
Use the example code in a file with python3 syntax highlighting.
def example(
good_arg: int,
trigger_arg: Iterable[int] = (),
bad_arg: int = 2,
) -> None:
pass
Expected behavior:
The good_arg, trigger_arg, and bad_arg names should all be highlighted the same.
Actual behavior:
good_arg and trigger_arg are highlighted correctly, then bad_arg is colored like a function name.
Reproduces how often:
Every time I've tested it.
Versions
adambengis-mbp:~ adambengis$ atom --version Atom : 1.35.0 Electron: 2.0.18 Chrome : 61.0.3163.100 Node : 8.9.3 adambengis-mbp:~ adambengis$ apm --version apm 2.1.3 npm 6.2.0 node 8.9.3 x64 atom 1.35.0 python 2.7.10 git 2.13.5
Additional Information
Python3 is being executed from a venv.
Thanks for the report -
Atom : 1.35.0
The latest stable release version of Atom is 1.39.1, I was unable to reproduce as described:
good_arg and trigger_arg are highlighted correctly, then bad_arg is colored like a function name.
With Settings > Core > Use Tree Sitter Parser enabled:

So looks like a different issue now with the parameters?

vs. TextMate:
