Magic incantations for Tailwind autocomplete in Svelte, Elixir ~H, Heex

This commit is contained in:
Julia 2023-10-19 01:54:42 -04:00
parent adabf0107f
commit 36731ba6b3
7 changed files with 40 additions and 8 deletions

View file

@ -76,7 +76,10 @@ pub fn init(
elixir::ElixirLspSetting::ElixirLs => language( elixir::ElixirLspSetting::ElixirLs => language(
"elixir", "elixir",
tree_sitter_elixir::language(), tree_sitter_elixir::language(),
vec![Arc::new(elixir::ElixirLspAdapter)], vec![
Arc::new(elixir::ElixirLspAdapter),
Arc::new(tailwind::TailwindLspAdapter::new(node_runtime.clone())),
],
), ),
elixir::ElixirLspSetting::NextLs => language( elixir::ElixirLspSetting::NextLs => language(
"elixir", "elixir",
@ -101,7 +104,10 @@ pub fn init(
language( language(
"heex", "heex",
tree_sitter_heex::language(), tree_sitter_heex::language(),
vec![Arc::new(elixir::ElixirLspAdapter)], vec![
Arc::new(elixir::ElixirLspAdapter),
Arc::new(tailwind::TailwindLspAdapter::new(node_runtime.clone())),
],
); );
language( language(
"json", "json",
@ -184,9 +190,10 @@ pub fn init(
language( language(
"svelte", "svelte",
tree_sitter_svelte::language(), tree_sitter_svelte::language(),
vec![Arc::new(svelte::SvelteLspAdapter::new( vec![
node_runtime.clone(), Arc::new(svelte::SvelteLspAdapter::new(node_runtime.clone())),
))], Arc::new(tailwind::TailwindLspAdapter::new(node_runtime.clone())),
],
); );
language( language(
"php", "php",

View file

@ -9,3 +9,8 @@ brackets = [
{ start = "\"", end = "\"", close = true, newline = false, not_in = ["string", "comment"] }, { start = "\"", end = "\"", close = true, newline = false, not_in = ["string", "comment"] },
{ start = "'", end = "'", close = true, newline = false, not_in = ["string", "comment"] }, { start = "'", end = "'", close = true, newline = false, not_in = ["string", "comment"] },
] ]
scope_opt_in_language_servers = ["tailwindcss-language-server"]
[overrides.string]
word_characters = ["-"]
opt_into_language_servers = ["tailwindcss-language-server"]

View file

@ -5,3 +5,8 @@ brackets = [
{ start = "<", end = ">", close = true, newline = true }, { start = "<", end = ">", close = true, newline = true },
] ]
block_comment = ["<%!-- ", " --%>"] block_comment = ["<%!-- ", " --%>"]
scope_opt_in_language_servers = ["tailwindcss-language-server"]
[overrides.string]
word_characters = ["-"]
opt_into_language_servers = ["tailwindcss-language-server"]

View file

@ -0,0 +1,4 @@
[
(attribute_value)
(quoted_attribute_value)
] @string

View file

@ -12,7 +12,8 @@ brackets = [
{ start = "`", end = "`", close = true, newline = false, not_in = ["string"] }, { start = "`", end = "`", close = true, newline = false, not_in = ["string"] },
{ start = "/*", end = " */", close = true, newline = false, not_in = ["string", "comment"] }, { start = "/*", end = " */", close = true, newline = false, not_in = ["string", "comment"] },
] ]
scope_opt_in_language_servers = ["tailwindcss-language-server"]
[overrides.element] [overrides.string]
line_comment = { remove = true } word_characters = ["-"]
block_comment = ["{/* ", " */}"] opt_into_language_servers = ["tailwindcss-language-server"]

View file

@ -0,0 +1,7 @@
(comment) @comment
[
(raw_text)
(attribute_value)
(quoted_attribute_value)
] @string

View file

@ -123,6 +123,9 @@ impl LspAdapter for TailwindLspAdapter {
("CSS".to_string(), "css".to_string()), ("CSS".to_string(), "css".to_string()),
("JavaScript".to_string(), "javascript".to_string()), ("JavaScript".to_string(), "javascript".to_string()),
("TSX".to_string(), "typescriptreact".to_string()), ("TSX".to_string(), "typescriptreact".to_string()),
("Svelte".to_string(), "svelte".to_string()),
("Elixir".to_string(), "phoenix-heex".to_string()),
("HEEX".to_string(), "phoenix-heex".to_string()),
] ]
.into_iter(), .into_iter(),
) )