diff --git a/.gitmodules b/.gitmodules index a90766d46..4cf9e5022 100644 --- a/.gitmodules +++ b/.gitmodules @@ -86,3 +86,6 @@ path = helix-syntax/languages/tree-sitter-elixir url = https://github.com/IceDragon200/tree-sitter-elixir shallow = true +[submodule "helix-syntax/languages/tree-sitter-nix"] + path = helix-syntax/languages/tree-sitter-nix + url = https://github.com/cstrahan/tree-sitter-nix diff --git a/helix-syntax/languages/tree-sitter-nix b/helix-syntax/languages/tree-sitter-nix new file mode 160000 index 000000000..50f38ceab --- /dev/null +++ b/helix-syntax/languages/tree-sitter-nix @@ -0,0 +1 @@ +Subproject commit 50f38ceab667f9d482640edfee803d74f4edeba5 diff --git a/helix-syntax/src/lib.rs b/helix-syntax/src/lib.rs index bb0b2ec60..a4706d3b3 100644 --- a/helix-syntax/src/lib.rs +++ b/helix-syntax/src/lib.rs @@ -68,18 +68,19 @@ mk_langs!( // 2) tree-sitter function to call to get a Language (Agda, tree_sitter_agda), (Bash, tree_sitter_bash), - (C, tree_sitter_c), - (CSharp, tree_sitter_c_sharp), (Cpp, tree_sitter_cpp), + (CSharp, tree_sitter_c_sharp), (Css, tree_sitter_css), + (C, tree_sitter_c), (Elixir, tree_sitter_elixir), (Go, tree_sitter_go), // (Haskell, tree_sitter_haskell), (Html, tree_sitter_html), - (Java, tree_sitter_java), (Javascript, tree_sitter_javascript), + (Java, tree_sitter_java), (Json, tree_sitter_json), (Julia, tree_sitter_julia), + (Nix, tree_sitter_nix), (Php, tree_sitter_php), (Python, tree_sitter_python), (Ruby, tree_sitter_ruby), diff --git a/languages.toml b/languages.toml index e923bb643..93cd653e7 100644 --- a/languages.toml +++ b/languages.toml @@ -116,6 +116,15 @@ language-server = { command = "pyls" } # TODO: pyls needs utf-8 offsets indent = { tab-width = 2, unit = " " } +[[language]] +name = "nix" +scope = "source.nix" +injection-regex = "nix" +file-types = ["nix"] +roots = [] + +indent = { tab-width = 2, unit = " " } + [[language]] name = "ruby" scope = "source.ruby"