highlights: create subscoping for ternary operator

After https://github.com/nvim-treesitter/nvim-treesitter/issues/470,
we decided to use `@conditional` for ternary operator instead of
operator despite `@conditional` is documented for keywords only.
A sub-scoping can make it easier for people to highlight this operator
group differently.

Also unify the usage of `@conditional...` across languages.
This commit is contained in:
Stephan Seitz 2022-12-02 20:22:58 +01:00
parent 74c46c8917
commit d6a2ecb8b7
13 changed files with 20 additions and 13 deletions

View file

@ -115,7 +115,7 @@
(ternary_exp [
"?"
":"
] @operator)
] @conditional.ternary)
(update_exp [
"++"

View file

@ -102,7 +102,7 @@
(false)
] @boolean
(conditional_expression [ "?" ":" ] @conditional)
(conditional_expression [ "?" ":" ] @conditional.ternary)
(string_literal) @string
(system_lib_string) @string

View file

@ -185,7 +185,7 @@
] @operator
(binary_expression "/" @operator)
(ternary_expression ["?" ":"] @conditional)
(ternary_expression ["?" ":"] @conditional.ternary)
(unary_expression ["!" "~" "-" "+"] @operator)
(unary_expression ["delete" "void" "typeof"] @keyword.operator)

View file

@ -115,3 +115,6 @@
"."
"?"
] @punctuation.delimiter
(eel_ternary_expression
["?" ":"] @conditional.ternary)

View file

@ -273,7 +273,7 @@
"\\" @punctuation.delimiter)
(ternary_expression
["?" ":"] @conditional)
["?" ":"] @conditional.ternary)
[
"if"

View file

@ -226,7 +226,7 @@
"case"
] @conditional
(ternary_expression ["?" ":"] @conditional)
(ternary_expression ["?" ":"] @conditional.ternary)
;

View file

@ -134,7 +134,7 @@
(else_clause
["else"] @conditional)
(ternary_expression
["?" ":"] @conditional)
["?" ":"] @conditional.ternary)
(try_statement
["try" "end"] @exception)

View file

@ -39,7 +39,8 @@
">="
] @operator
"?" @conditional.ternary
(ternaryoperator
["?" ":"] @conditional.ternary)
[
"if"

View file

@ -13,6 +13,10 @@
; Keywords that mark conditional statements
[ "if" "elsif" "unless" "else" ] @conditional
(ternary_expression
["?" ":"] @conditional.ternary)
(ternary_expression_in_hash
["?" ":"] @conditional.ternary)
; Keywords that mark repeating loops
[ "while" "until" "for" "foreach" ] @repeat
@ -142,8 +146,6 @@
(to_reference)
(type_glob)
(hash_access_variable)
(ternary_expression)
(ternary_expression_in_hash)
] @operator
[

View file

@ -143,4 +143,4 @@
"=>"
] @operator
(ternary_expression [":" "?"] @conditional)
(ternary_expression [":" "?"] @conditional.ternary)

View file

@ -271,7 +271,7 @@
":"
] @punctuation.delimiter
(ternary_expression ["?" ":"] @conditional)
(ternary_expression ["?" ":"] @conditional.ternary)
; Options
((set_value) @number