wip yaml highlighting
This commit is contained in:
parent
4e80ae13ec
commit
de0b136be2
6 changed files with 71 additions and 0 deletions
10
Cargo.lock
generated
10
Cargo.lock
generated
|
@ -7191,6 +7191,15 @@ dependencies = [
|
||||||
"tree-sitter",
|
"tree-sitter",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tree-sitter-yaml"
|
||||||
|
version = "0.0.1"
|
||||||
|
source = "git+https://github.com/zed-industries/tree-sitter-yaml?rev=36a64faf81931d3aaa8580a329344ac80ac0fb79#36a64faf81931d3aaa8580a329344ac80ac0fb79"
|
||||||
|
dependencies = [
|
||||||
|
"cc",
|
||||||
|
"tree-sitter",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "try-lock"
|
name = "try-lock"
|
||||||
version = "0.2.3"
|
version = "0.2.3"
|
||||||
|
@ -8430,6 +8439,7 @@ dependencies = [
|
||||||
"tree-sitter-scheme",
|
"tree-sitter-scheme",
|
||||||
"tree-sitter-toml",
|
"tree-sitter-toml",
|
||||||
"tree-sitter-typescript",
|
"tree-sitter-typescript",
|
||||||
|
"tree-sitter-yaml",
|
||||||
"unindent",
|
"unindent",
|
||||||
"url",
|
"url",
|
||||||
"urlencoding",
|
"urlencoding",
|
||||||
|
|
|
@ -110,6 +110,7 @@ tree-sitter-ruby = "0.20.0"
|
||||||
tree-sitter-html = "0.19.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 = "af0fd1fa452cb2562dc7b5c8a8c55551c39273b9"}
|
||||||
tree-sitter-racket = { git = "https://github.com/zed-industries/tree-sitter-racket", rev = "eb010cf2c674c6fd9a6316a84e28ef90190fe51a"}
|
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 = "36a64faf81931d3aaa8580a329344ac80ac0fb79"}
|
||||||
tree-sitter-lua = "0.0.14"
|
tree-sitter-lua = "0.0.14"
|
||||||
url = "2.2"
|
url = "2.2"
|
||||||
urlencoding = "2.1.2"
|
urlencoding = "2.1.2"
|
||||||
|
|
|
@ -128,6 +128,11 @@ pub fn init(languages: Arc<LanguageRegistry>) {
|
||||||
tree_sitter_lua::language(),
|
tree_sitter_lua::language(),
|
||||||
Some(Box::new(lua::LuaLspAdapter)),
|
Some(Box::new(lua::LuaLspAdapter)),
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
"yaml",
|
||||||
|
tree_sitter_yaml::language(),
|
||||||
|
None, //
|
||||||
|
)
|
||||||
] {
|
] {
|
||||||
languages.register(name, load_config(name), grammar, lsp_adapter, load_queries);
|
languages.register(name, load_config(name), grammar, lsp_adapter, load_queries);
|
||||||
}
|
}
|
||||||
|
|
3
crates/zed/src/languages/yaml/brackets.scm
Normal file
3
crates/zed/src/languages/yaml/brackets.scm
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
("[" @open "]" @close)
|
||||||
|
("{" @open "}" @close)
|
||||||
|
("\"" @open "\"" @close)
|
15
crates/zed/src/languages/yaml/config.toml
Normal file
15
crates/zed/src/languages/yaml/config.toml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
name = "YAML"
|
||||||
|
path_suffixes = ["yml", "yaml"]
|
||||||
|
line_comment = "# "
|
||||||
|
autoclose_before = ",]}"
|
||||||
|
brackets = [
|
||||||
|
{ start = "{", end = "}", close = true, newline = true },
|
||||||
|
{ start = "[", end = "]", close = true, newline = true },
|
||||||
|
{ start = "\"", end = "\"", close = true, newline = false },
|
||||||
|
]
|
||||||
|
|
||||||
|
[overrides.string]
|
||||||
|
brackets = [
|
||||||
|
{ start = "{", end = "}", close = true, newline = true },
|
||||||
|
{ start = "[", end = "]", close = true, newline = true },
|
||||||
|
]
|
37
crates/zed/src/languages/yaml/highlights.scm
Normal file
37
crates/zed/src/languages/yaml/highlights.scm
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
(boolean_scalar) @boolean
|
||||||
|
(null_scalar) @constant.builtin
|
||||||
|
(double_quote_scalar) @string
|
||||||
|
(single_quote_scalar) @string
|
||||||
|
((block_scalar) @string (#set! "priority" 99))
|
||||||
|
(string_scalar) @string
|
||||||
|
(escape_sequence) @string.escape
|
||||||
|
(integer_scalar) @number
|
||||||
|
(float_scalar) @number
|
||||||
|
(comment) @comment
|
||||||
|
(anchor_name) @type
|
||||||
|
(alias_name) @type
|
||||||
|
(tag) @type
|
||||||
|
(ERROR) @error
|
||||||
|
|
||||||
|
[
|
||||||
|
","
|
||||||
|
"-"
|
||||||
|
":"
|
||||||
|
">"
|
||||||
|
"?"
|
||||||
|
"|"
|
||||||
|
] @punctuation.delimiter
|
||||||
|
|
||||||
|
[
|
||||||
|
"["
|
||||||
|
"]"
|
||||||
|
"{"
|
||||||
|
"}"
|
||||||
|
] @punctuation.bracket
|
||||||
|
|
||||||
|
[
|
||||||
|
"*"
|
||||||
|
"&"
|
||||||
|
"---"
|
||||||
|
"..."
|
||||||
|
] @punctuation.special
|
Loading…
Add table
Add a link
Reference in a new issue