Change summary
Cargo.lock | 4
crates/zed/Cargo.toml | 2
crates/zed/src/languages/svelte/highlights.scm | 80 ++++++-------------
crates/zed/src/languages/svelte/indents.scm | 12 ---
crates/zed/src/languages/svelte/injections.scm | 19 ++++
5 files changed, 49 insertions(+), 68 deletions(-)
Detailed changes
@@ -8118,8 +8118,8 @@ dependencies = [
[[package]]
name = "tree-sitter-scheme"
-version = "0.2.0"
-source = "git+https://github.com/6cdh/tree-sitter-scheme?rev=af0fd1fa452cb2562dc7b5c8a8c55551c39273b9#af0fd1fa452cb2562dc7b5c8a8c55551c39273b9"
+version = "0.5.0"
+source = "git+https://github.com/6cdh/tree-sitter-scheme?rev=ca8af220aaf2a80aaf609bfb0df193817e4f064b#ca8af220aaf2a80aaf609bfb0df193817e4f064b"
dependencies = [
"cc",
"tree-sitter",
@@ -119,7 +119,7 @@ tree-sitter-toml = { git = "https://github.com/tree-sitter/tree-sitter-toml", re
tree-sitter-typescript = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "5d20856f34315b068c41edaee2ac8a100081d259" }
tree-sitter-ruby = "0.20.0"
tree-sitter-html = "0.19.0"
-tree-sitter-scheme = { git = "https://github.com/6cdh/tree-sitter-scheme", rev = "af0fd1fa452cb2562dc7b5c8a8c55551c39273b9"}
+tree-sitter-scheme = { git = "https://github.com/6cdh/tree-sitter-scheme", rev = "ca8af220aaf2a80aaf609bfb0df193817e4f064b"}
tree-sitter-racket = { git = "https://github.com/zed-industries/tree-sitter-racket", rev = "eb010cf2c674c6fd9a6316a84e28ef90190fe51a"}
tree-sitter-yaml = { git = "https://github.com/zed-industries/tree-sitter-yaml", rev = "f545a41f57502e1b5ddf2a6668896c1b0620f930"}
tree-sitter-svelte = { git = "https://github.com/Himujjal/tree-sitter-svelte", rev = "697bb515471871e85ff799ea57a76298a71a9cca"}
@@ -1,26 +1,16 @@
; Special identifiers
;--------------------
-[
- "<"
- ">"
- "</"
- "/>"
- "#"
- ":"
- "/"
- "@"
-] @tag.delimiter
-[
- "{"
- "}"
-] @punctuation.bracket
+; TODO:
+(tag_name) @tag
+(attribute_name) @property
+(erroneous_end_tag_name) @keyword
+(comment) @comment
[
- (special_block_keyword)
- (then)
- (as)
-] @keyword
+ (attribute_value)
+ (quoted_attribute_value)
+] @string
[
(text)
@@ -28,41 +18,25 @@
] @none
[
- (attribute_value)
- (quoted_attribute_value)
-] @string
-
-(tag_name) @tag
-(attribute_name) @property
-(erroneous_end_tag_name) @error
-(comment) @comment
-
-((attribute
- (attribute_name) @_attr
- (quoted_attribute_value (attribute_value) @text.uri))
- (#match? @_attr "^(href|src)$"))
-
-; TODO:
-
-((element (start_tag (tag_name) @_tag) (text) @text.uri)
- (#eq? @_tag "a"))
-
-((element (start_tag (tag_name) @_tag) (text) @text.literal)
- (#match? @_tag "^(code|kbd)$"))
-
-((element (start_tag (tag_name) @_tag) (text) @text.underline)
- (#eq? @_tag "u"))
-
-((element (start_tag (tag_name) @_tag) (text) @text.strike)
- (#match? @_tag "^(s|del)$"))
-
-((element (start_tag (tag_name) @_tag) (text) @text.emphasis)
- (#match? @_tag "^(em|i)$"))
-
-((element (start_tag (tag_name) @_tag) (text) @text.strong)
- (#match? @_tag "^(strong|b)$"))
+ (special_block_keyword)
+ (then)
+ (as)
+] @keyword
-((element (start_tag (tag_name) @_tag) (text) @text.title)
- (#match? @_tag "^(h[0-9]|title)$"))
+[
+ "{"
+ "}"
+] @punctuation.bracket
"=" @operator
+
+[
+ "<"
+ ">"
+ "</"
+ "/>"
+ "#"
+ ":"
+ "/"
+ "@"
+] @tag.delimiter
@@ -6,15 +6,3 @@
(script_element)
(style_element)
] @indent
-
-[
- (end_tag)
- (else_statement)
- (if_end_expr)
- (each_end_expr)
- (await_end_expr)
- ">"
- "/>"
-] @branch
-
-(comment) @ignore
@@ -4,6 +4,25 @@
(raw_text) @content
(#set! "language" "javascript"))
+ ((script_element
+ (start_tag
+ (attribute
+ (quoted_attribute_value (attribute_value) @_language)))
+ (raw_text) @content)
+ (#eq? @_language "ts")
+ (#set! "language" "typescript"))
+
+((script_element
+ (start_tag
+ (attribute
+ (quoted_attribute_value (attribute_value) @_language)))
+ (raw_text) @content)
+ (#eq? @_language "typescript")
+ (#set! "language" "typescript"))
+
(style_element
(raw_text) @content
(#set! "language" "css"))
+
+((raw_text_expr) @content
+ (#set! "language" "javascript"))