Closed sprt closed 9 months ago
Unfortunately there is no scope for inline type hints at all - as far as I could find.
The yellow highlighting in your screenshot is because int
and list
have the scope support.type.python
. This scope also applies for the int
in this snippet: print(int(1.2))
.
There are scopes for type hint comments though:
meta.typehint.comment.python
comment.typehint.directive.notation.python
comment.typehint.ignore.notation.python
comment.typehint.punctuation.notation.python
comment.typehint.type.notation.python
comment.typehint.variable.notation.python
I would love to see one or multiple scope(s) for inline type hints (variables, parameters, returns) like PyCharm has.
EDIT: with the new Pylance
language server you can get semantic highlighting including type hints: https://github.com/microsoft/pylance-release#semantic-highlighting
Since PEP 585 implemented in Python 3.9, one can use the generics syntax even with built-in collections, not just those included in
typing
(e.g.list
vs.typing.List
).As such, in the screenshot below, the type hint for argument
c
isn't highlighted properly. Inlist[int]
, bothlist
andint
should be highlighted, whereas onlyint
is highlighted currently. The type hint for argumentb
is highlighted correctly (and same fora
).