Remove built-in Nix support (#10439)

Max Brunsfeld and Marshall created

Release Notes:

- Removed built-in Nix support, now that there is a Nix extension.

Co-authored-by: Marshall <marshall@zed.dev>

Change summary

Cargo.lock                              | 10 ---
Cargo.toml                              |  1 
crates/languages/Cargo.toml             |  1 
crates/languages/src/lib.rs             |  2 
crates/languages/src/nix/config.toml    | 12 ---
crates/languages/src/nix/highlights.scm | 89 ---------------------------
6 files changed, 115 deletions(-)

Detailed changes

Cargo.lock 🔗

@@ -5439,7 +5439,6 @@ dependencies = [
  "tree-sitter-jsdoc",
  "tree-sitter-json 0.20.0",
  "tree-sitter-markdown",
- "tree-sitter-nix",
  "tree-sitter-nu",
  "tree-sitter-ocaml",
  "tree-sitter-proto",
@@ -10443,15 +10442,6 @@ dependencies = [
  "tree-sitter",
 ]
 
-[[package]]
-name = "tree-sitter-nix"
-version = "0.0.1"
-source = "git+https://github.com/nix-community/tree-sitter-nix?rev=66e3e9ce9180ae08fc57372061006ef83f0abde7#66e3e9ce9180ae08fc57372061006ef83f0abde7"
-dependencies = [
- "cc",
- "tree-sitter",
-]
-
 [[package]]
 name = "tree-sitter-nu"
 version = "0.0.1"

Cargo.toml 🔗

@@ -325,7 +325,6 @@ tree-sitter-html = "0.19.0"
 tree-sitter-jsdoc = { git = "https://github.com/tree-sitter/tree-sitter-jsdoc", ref = "6a6cf9e7341af32d8e2b2e24a37fbfebefc3dc55" }
 tree-sitter-json = { git = "https://github.com/tree-sitter/tree-sitter-json", rev = "40a81c01a40ac48744e0c8ccabbaba1920441199" }
 tree-sitter-markdown = { git = "https://github.com/MDeiml/tree-sitter-markdown", rev = "330ecab87a3e3a7211ac69bbadc19eabecdb1cca" }
-tree-sitter-nix = { git = "https://github.com/nix-community/tree-sitter-nix", rev = "66e3e9ce9180ae08fc57372061006ef83f0abde7" }
 tree-sitter-nu = { git = "https://github.com/nushell/tree-sitter-nu", rev = "7dd29f9616822e5fc259f5b4ae6c4ded9a71a132" }
 tree-sitter-ocaml = { git = "https://github.com/tree-sitter/tree-sitter-ocaml", rev = "4abfdc1c7af2c6c77a370aee974627be1c285b3b" }
 tree-sitter-proto = { git = "https://github.com/rewinfrey/tree-sitter-proto", rev = "36d54f288aee112f13a67b550ad32634d0c2cb52" }

crates/languages/Cargo.toml 🔗

@@ -50,7 +50,6 @@ tree-sitter-heex.workspace = true
 tree-sitter-jsdoc.workspace = true
 tree-sitter-json.workspace = true
 tree-sitter-markdown.workspace = true
-tree-sitter-nix.workspace = true
 tree-sitter-nu.workspace = true
 tree-sitter-ocaml.workspace = true
 tree-sitter-proto.workspace = true

crates/languages/src/lib.rs 🔗

@@ -69,7 +69,6 @@ pub fn init(
         ("jsdoc", tree_sitter_jsdoc::language()),
         ("json", tree_sitter_json::language()),
         ("markdown", tree_sitter_markdown::language()),
-        ("nix", tree_sitter_nix::language()),
         ("nu", tree_sitter_nu::language()),
         ("ocaml", tree_sitter_ocaml::language_ocaml()),
         (
@@ -282,7 +281,6 @@ pub fn init(
         "yaml",
         vec![Arc::new(yaml::YamlLspAdapter::new(node_runtime.clone()))]
     );
-    language!("nix");
     language!("nu", vec![Arc::new(nu::NuLanguageServer {})]);
     language!("ocaml", vec![Arc::new(ocaml::OCamlLspAdapter)]);
     language!("ocaml-interface", vec![Arc::new(ocaml::OCamlLspAdapter)]);

crates/languages/src/nix/config.toml 🔗

@@ -1,12 +0,0 @@
-name = "Nix"
-grammar = "nix"
-path_suffixes = ["nix"]
-line_comments = ["# "]
-block_comment = ["/* ", " */"]
-autoclose_before = ";:.,=}])>` \n\t\""
-brackets = [
-    { start = "{", end = "}", close = true, newline = true },
-    { start = "[", end = "]", close = true, newline = true },
-    { start = "(", end = ")", close = true, newline = true },
-    { start = "<", end = ">", close = true, newline = true },
-]

crates/languages/src/nix/highlights.scm 🔗

@@ -1,95 +0,0 @@
-(comment) @comment
-
-[
-  "if"
-  "then"
-  "else"
-  "let"
-  "inherit"
-  "in"
-  "rec"
-  "with"
-  "assert"
-  "or"
-] @keyword
-
-[
- (string_expression)
- (indented_string_expression)
-] @string
-
-[
-  (path_expression)
-  (hpath_expression)
-  (spath_expression)
-] @string.special.path
-
-(uri_expression) @link_uri
-
-[
-  (integer_expression)
-  (float_expression)
-] @number
-
-(interpolation
-  "${" @punctuation.special
-  "}" @punctuation.special) @embedded
-
-(escape_sequence) @escape
-(dollar_escape) @escape
-
-(function_expression
-  universal: (identifier) @parameter
-)
-
-(formal
-  name: (identifier) @parameter
-  "?"? @punctuation.delimiter)
-
-(select_expression
-  attrpath: (attrpath (identifier)) @property)
-
-(apply_expression
-  function: [
-    (variable_expression (identifier)) @function
-    (select_expression
-      attrpath: (attrpath
-        attr: (identifier) @function .))])
-
-(unary_expression
-  operator: _ @operator)
-
-(binary_expression
-  operator: _ @operator)
-
-(variable_expression (identifier) @variable)
-
-(binding
-  attrpath: (attrpath (identifier)) @property)
-
-"=" @operator
-
-[
-  ";"
-  "."
-  ","
-] @punctuation.delimiter
-
-[
-  "("
-  ")"
-  "["
-  "]"
-  "{"
-  "}"
-] @punctuation.bracket
-
-(identifier) @variable
-
-((identifier) @function.builtin