name: (identifier) @font-lock-type-face)
(parameters (identifier) @font-lock-variable-name-face)
(parameters (typed_parameter (identifier) @font-lock-variable-name-face))
- (parameters (default_parameter name: (identifier) @font-lock-variable-name-face)))
+ (parameters (default_parameter name: (identifier) @font-lock-variable-name-face))
+ (lambda_parameters (identifier) @font-lock-variable-name-face)
+ (for_in_clause
+ left: (identifier) @font-lock-variable-name-face)
+ ((import_from_statement
+ name: ((dotted_name (identifier) @font-lock-type-face)))
+ (:match "\\`[A-Z][A-Za-z0-9]+\\'" @font-lock-type-face))
+ (import_from_statement
+ name: ((dotted_name (identifier) @font-lock-variable-name-face))))
:feature 'builtin
:language 'python
:feature 'constant
:language 'python
- '([(true) (false) (none)] @font-lock-constant-face)
+ '([(true) (false) (none)] @font-lock-constant-face
+ ((identifier) @font-lock-constant-face
+ (:match "\\`[A-Z][A-Z0-9_]+\\'" @font-lock-constant-face))
+ ((attribute
+ attribute: (identifier) @font-lock-constant-face)
+ (:match "\\`[A-Z][A-Z0-9_]+\\'" @font-lock-constant-face)))
:feature 'assignment
:language 'python
:feature 'type
:language 'python
- ;; Override built-in faces when dict/list are used for type hints.
- :override t
`(((identifier) @font-lock-type-face
(:match ,(rx-to-string
`(seq bol (or ,@python--treesit-exceptions)
((call function: (identifier) @func-name
(argument_list :anchor (_)
(binary_operator) @python--treesit-fontify-union-types-strict))
- (:match "^is\\(?:instance\\|subclass\\)$" @func-name)))
+ (:match "^is\\(?:instance\\|subclass\\)$" @func-name))
+ ((identifier) @font-lock-type-face
+ (:match "\\`[A-Z][A-Za-z0-9]+\\'" @font-lock-type-face)))
:feature 'escape-sequence
:language 'python