feat: correct Swift highlights (#12409)

- Adds injections for the `comment` language
- Correct highlight of the `nil` value. Same highlight as `null` in javascript, java and others
- Recognize `<` and `>` as punctuation, used in generics (same color as the syntax used in other languages)
- `protocol` function methods are recognized
- When accessing object properties, like `hello.world`, the `world` is properly recognized as being a member
- Recognize the `\` as an operator
This commit is contained in:
Nikita Revenco 2025-01-05 16:54:45 +00:00 committed by GitHub
parent eed052e86b
commit 2b8f8df1af
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 11 additions and 2 deletions

View file

@ -4,7 +4,7 @@
["\\(" ")"] @punctuation.special)
["." ";" ":" "," ] @punctuation.delimiter
["(" ")" "[" "]" "{" "}"] @punctuation.bracket
["(" ")" "[" "]" "{" "}" "<" ">"] @punctuation.bracket
; Identifiers
(attribute) @variable
@ -24,6 +24,7 @@
] @keyword
(function_declaration (simple_identifier) @function.method)
(protocol_function_declaration (simple_identifier) @function.method)
(init_declaration ["init" @constructor])
(deinit_declaration ["deinit" @constructor])
@ -91,6 +92,9 @@
(#match? @type "^[A-Z]"))
(call_expression (simple_identifier) @keyword (#eq? @keyword "defer")) ; defer { ... }
(navigation_suffix
(simple_identifier) @variable.other.member)
(try_operator) @operator
(try_operator ["try" @keyword])
@ -147,7 +151,7 @@
(integer_literal) @constant.numeric.integer
(real_literal) @constant.numeric.float
(boolean_literal) @constant.builtin.boolean
"nil" @variable.builtin
"nil" @constant.builtin
"?" @type
(type_annotation "!" @type)
@ -160,6 +164,7 @@
"?"
"+"
"-"
"\\"
"*"
"/"
"%"

View file

@ -4,3 +4,7 @@
((regex_literal) @injection.content
(#set! injection.language "regex"))
((comment) @injection.content
(#set! injection.language "comment")
(#set! injection.include-children))