about summary refs log tree commit diff
path: root/pkgs/applications/editors/helix
diff options
context:
space:
mode:
authorLeona Maroni <dev@leona.is>2023-05-18 17:07:32 +0200
committerYt <happysalada@tuta.io>2023-05-20 14:55:12 -0400
commit95c7a595cef4ffb097bf3718a29982d8d66902b7 (patch)
tree17782504e26a00332a973faae4a614dbe86cd400 /pkgs/applications/editors/helix
parent055e998b00acc979f347d8886099cdcee6f88961 (diff)
helix: 23.03 -> 23.05
Switch to self-build of the tree-sitter grammar files and
use the git repo as source directly
Diffstat (limited to 'pkgs/applications/editors/helix')
-rw-r--r--pkgs/applications/editors/helix/Cargo.lock2561
-rw-r--r--pkgs/applications/editors/helix/default.nix43
-rw-r--r--pkgs/applications/editors/helix/grammars.nix107
-rw-r--r--pkgs/applications/editors/helix/language-grammars.json1
-rwxr-xr-xpkgs/applications/editors/helix/update.py47
5 files changed, 179 insertions, 2580 deletions
diff --git a/pkgs/applications/editors/helix/Cargo.lock b/pkgs/applications/editors/helix/Cargo.lock
deleted file mode 100644
index b7ed2c9c81825..0000000000000
--- a/pkgs/applications/editors/helix/Cargo.lock
+++ /dev/null
@@ -1,2561 +0,0 @@
-# This file is automatically @generated by Cargo.
-# It is not intended for manual editing.
-version = 3
-
-[[package]]
-name = "adler"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
-
-[[package]]
-name = "ahash"
-version = "0.7.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
-dependencies = [
- "getrandom",
- "once_cell",
- "version_check",
-]
-
-[[package]]
-name = "ahash"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c99f64d1e06488f620f932677e24bc6e2897582980441ae90a671415bd7ec2f"
-dependencies = [
- "cfg-if",
- "getrandom",
- "once_cell",
- "version_check",
-]
-
-[[package]]
-name = "aho-corasick"
-version = "0.7.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "android_system_properties"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "anyhow"
-version = "1.0.70"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4"
-
-[[package]]
-name = "arc-swap"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6"
-
-[[package]]
-name = "autocfg"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
-
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
-[[package]]
-name = "bitflags"
-version = "2.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "487f1e0fcbe47deb8b0574e646def1c903389d95241dd1bbcc6ce4a715dfc0c1"
-
-[[package]]
-name = "bstr"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3d4260bcc2e8fc9df1eac4919a720effeb63a3f0952f5bf4944adfa18897f09"
-dependencies = [
- "memchr",
- "once_cell",
- "regex-automata",
- "serde",
-]
-
-[[package]]
-name = "btoi"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9dd6407f73a9b8b6162d8a2ef999fe6afd7cc15902ebf42c5cd296addf17e0ad"
-dependencies = [
- "num-traits",
-]
-
-[[package]]
-name = "bumpalo"
-version = "3.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535"
-
-[[package]]
-name = "bytecount"
-version = "0.6.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c"
-
-[[package]]
-name = "bytes"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
-
-[[package]]
-name = "cassowary"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53"
-
-[[package]]
-name = "cc"
-version = "1.0.79"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
-
-[[package]]
-name = "cfg-if"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
-
-[[package]]
-name = "chardetng"
-version = "0.1.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14b8f0b65b7b08ae3c8187e8d77174de20cb6777864c6b832d8ad365999cf1ea"
-dependencies = [
- "cfg-if",
- "encoding_rs",
- "memchr",
-]
-
-[[package]]
-name = "chrono"
-version = "0.4.24"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
-dependencies = [
- "iana-time-zone",
- "num-integer",
- "num-traits",
- "winapi",
-]
-
-[[package]]
-name = "clipboard-win"
-version = "4.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7191c27c2357d9b7ef96baac1773290d4ca63b24205b82a3fd8a0637afcf0362"
-dependencies = [
- "error-code",
- "str-buf",
- "winapi",
-]
-
-[[package]]
-name = "clru"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b8191fa7302e03607ff0e237d4246cc043ff5b3cb9409d995172ba3bea16b807"
-
-[[package]]
-name = "codespan-reporting"
-version = "0.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
-dependencies = [
- "termcolor",
- "unicode-width",
-]
-
-[[package]]
-name = "content_inspector"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "core-foundation-sys"
-version = "0.8.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
-
-[[package]]
-name = "crc32fast"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "crossterm"
-version = "0.26.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a84cda67535339806297f1b331d6dd6320470d2a0fe65381e79ee9e156dd3d13"
-dependencies = [
- "bitflags 1.3.2",
- "crossterm_winapi",
- "futures-core",
- "libc",
- "mio",
- "parking_lot",
- "signal-hook",
- "signal-hook-mio",
- "winapi",
-]
-
-[[package]]
-name = "crossterm_winapi"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "cxx"
-version = "1.0.94"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.94"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b"
-dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.94"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.94"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "dirs"
-version = "4.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059"
-dependencies = [
- "dirs-sys",
-]
-
-[[package]]
-name = "dirs-next"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
-dependencies = [
- "cfg-if",
- "dirs-sys-next",
-]
-
-[[package]]
-name = "dirs-sys"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
-dependencies = [
- "libc",
- "redox_users",
- "winapi",
-]
-
-[[package]]
-name = "dunce"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bd4b30a6560bbd9b4620f4de34c3f14f60848e58a9b7216801afcb4c7b31c3c"
-
-[[package]]
-name = "either"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
-
-[[package]]
-name = "encoding_rs"
-version = "0.8.32"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "encoding_rs_io"
-version = "0.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cc3c5651fb62ab8aa3103998dade57efdd028544bd300516baa31840c252a83"
-dependencies = [
- "encoding_rs",
-]
-
-[[package]]
-name = "errno"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50d6a0976c999d473fe89ad888d5a284e55366d9dc9038b1ba2aa15128c4afa0"
-dependencies = [
- "errno-dragonfly",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "errno-dragonfly"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
-dependencies = [
- "cc",
- "libc",
-]
-
-[[package]]
-name = "error-code"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64f18991e7bf11e7ffee451b5318b5c1a73c52d0d0ada6e5a3017c8c1ced6a21"
-dependencies = [
- "libc",
- "str-buf",
-]
-
-[[package]]
-name = "etcetera"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d017fce18e4e9bfa75e1db51f49f4487bd3f8a7df509b24a46474a956ee962fd"
-dependencies = [
- "cfg-if",
- "dirs-next",
- "thiserror",
-]
-
-[[package]]
-name = "fastrand"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
-dependencies = [
- "instant",
-]
-
-[[package]]
-name = "fern"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9f0c14694cbd524c8720dd69b0e3179344f04ebb5f90f2e4a440c6ea3b2f1ee"
-dependencies = [
- "log",
-]
-
-[[package]]
-name = "filetime"
-version = "0.2.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall 0.2.16",
- "windows-sys",
-]
-
-[[package]]
-name = "flate2"
-version = "1.0.25"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841"
-dependencies = [
- "crc32fast",
- "miniz_oxide",
-]
-
-[[package]]
-name = "fnv"
-version = "1.0.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
-
-[[package]]
-name = "form_urlencoded"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
-dependencies = [
- "percent-encoding",
-]
-
-[[package]]
-name = "futures-core"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86d7a0c1aa76363dac491de0ee99faf6941128376f1cf96f07db7603b7de69dd"
-
-[[package]]
-name = "futures-executor"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1997dd9df74cdac935c76252744c1ed5794fac083242ea4fe77ef3ed60ba0f83"
-dependencies = [
- "futures-core",
- "futures-task",
- "futures-util",
-]
-
-[[package]]
-name = "futures-task"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd65540d33b37b16542a0438c12e6aeead10d4ac5d05bd3f805b8f35ab592879"
-
-[[package]]
-name = "futures-util"
-version = "0.3.27"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ef6b17e481503ec85211fed8f39d1970f128935ca1f814cd32ac4a6842e84ab"
-dependencies = [
- "futures-core",
- "futures-task",
- "pin-project-lite",
- "pin-utils",
- "slab",
-]
-
-[[package]]
-name = "fuzzy-matcher"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54614a3312934d066701a80f20f15fa3b56d67ac7722b39eea5b4c9dd1d66c94"
-dependencies = [
- "thread_local",
-]
-
-[[package]]
-name = "getrandom"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
-dependencies = [
- "cfg-if",
- "libc",
- "wasi",
-]
-
-[[package]]
-name = "gix"
-version = "0.43.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c256ea71cc1967faaefdaad15f334146b7c806f12460dcafd3afed845c8c78dd"
-dependencies = [
- "gix-actor",
- "gix-attributes",
- "gix-config",
- "gix-credentials",
- "gix-date",
- "gix-diff",
- "gix-discover",
- "gix-features",
- "gix-glob",
- "gix-hash",
- "gix-hashtable",
- "gix-index",
- "gix-lock",
- "gix-mailmap",
- "gix-object",
- "gix-odb",
- "gix-pack",
- "gix-path",
- "gix-prompt",
- "gix-ref",
- "gix-refspec",
- "gix-revision",
- "gix-sec",
- "gix-tempfile",
- "gix-traverse",
- "gix-url",
- "gix-validate",
- "gix-worktree",
- "log",
- "once_cell",
- "signal-hook",
- "smallvec",
- "thiserror",
- "unicode-normalization",
-]
-
-[[package]]
-name = "gix-actor"
-version = "0.19.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dc22b0cdc52237667c301dd7cdc6ead8f8f73c9f824e9942c8ebd6b764f6c0bf"
-dependencies = [
- "bstr",
- "btoi",
- "gix-date",
- "itoa",
- "nom",
- "thiserror",
-]
-
-[[package]]
-name = "gix-attributes"
-version = "0.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2231a25934a240d0a4b6f4478401c73ee81d8be52de0293eedbc172334abf3e1"
-dependencies = [
- "bstr",
- "gix-features",
- "gix-glob",
- "gix-path",
- "gix-quote",
- "thiserror",
- "unicode-bom",
-]
-
-[[package]]
-name = "gix-bitmap"
-version = "0.2.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "024bca0c7187517bda5ea24ab148c9ca8208dd0c3e2bea88cdb2008f91791a6d"
-dependencies = [
- "thiserror",
-]
-
-[[package]]
-name = "gix-chunk"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0d39583cab06464b8bf73b3f1707458270f0e7383cb24c3c9c1a16e6f792978"
-dependencies = [
- "thiserror",
-]
-
-[[package]]
-name = "gix-command"
-version = "0.2.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2c6f75c1e0f924de39e750880a6e21307194bb1ab773efe3c7d2d787277f8ab"
-dependencies = [
- "bstr",
-]
-
-[[package]]
-name = "gix-config"
-version = "0.20.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fbad5ce54a8fc997acc50febd89ec80fa6e97cb7f8d0654cb229936407489d8"
-dependencies = [
- "bstr",
- "gix-config-value",
- "gix-features",
- "gix-glob",
- "gix-path",
- "gix-ref",
- "gix-sec",
- "log",
- "memchr",
- "nom",
- "once_cell",
- "smallvec",
- "thiserror",
- "unicode-bom",
-]
-
-[[package]]
-name = "gix-config-value"
-version = "0.10.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d09154c0c8677e4da0ec35e896f56ee3e338e741b9599fae06075edd83a4081c"
-dependencies = [
- "bitflags 1.3.2",
- "bstr",
- "gix-path",
- "libc",
- "thiserror",
-]
-
-[[package]]
-name = "gix-credentials"
-version = "0.12.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "750b684197374518ea057e0a0594713e07683faa0a3f43c0f93d97f64130ad8d"
-dependencies = [
- "bstr",
- "gix-command",
- "gix-config-value",
- "gix-path",
- "gix-prompt",
- "gix-sec",
- "gix-url",
- "thiserror",
-]
-
-[[package]]
-name = "gix-date"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b96271912ce39822501616f177dea7218784e6c63be90d5f36322ff3a722aae2"
-dependencies = [
- "bstr",
- "itoa",
- "thiserror",
- "time",
-]
-
-[[package]]
-name = "gix-diff"
-version = "0.28.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "103a0fa79b0d438f5ecb662502f052e530ace4fe1fe8e1c83c0c6da76d728e67"
-dependencies = [
- "gix-hash",
- "gix-object",
- "imara-diff",
- "thiserror",
-]
-
-[[package]]
-name = "gix-discover"
-version = "0.16.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6eba8ba458cb8f4a6c33409b0fe650b1258655175a7ffd1d24fafd3ed31d880b"
-dependencies = [
- "bstr",
- "dunce",
- "gix-hash",
- "gix-path",
- "gix-ref",
- "gix-sec",
- "thiserror",
-]
-
-[[package]]
-name = "gix-features"
-version = "0.28.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b76f9a80f6dd7be66442ae86e1f534effad9546676a392acc95e269d0c21c22"
-dependencies = [
- "crc32fast",
- "flate2",
- "gix-hash",
- "libc",
- "once_cell",
- "prodash",
- "sha1_smol",
- "thiserror",
- "walkdir",
-]
-
-[[package]]
-name = "gix-glob"
-version = "0.5.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93e43efd776bc543f46f0fd0ca3d920c37af71a764a16f2aebd89765e9ff2993"
-dependencies = [
- "bitflags 1.3.2",
- "bstr",
-]
-
-[[package]]
-name = "gix-hash"
-version = "0.10.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c0c5a9f4d621d4f4ea046bb331df5c746ca735b8cae5b234cc2be70ee4dbef0"
-dependencies = [
- "hex",
- "thiserror",
-]
-
-[[package]]
-name = "gix-hashtable"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9609c1b8f36f12968e6a6098f7cdb52004f7d42d570f47a2d6d7c16612f19acb"
-dependencies = [
- "gix-hash",
- "hashbrown 0.13.2",
- "parking_lot",
-]
-
-[[package]]
-name = "gix-index"
-version = "0.15.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "717ab601ece7921f59fe86849dbe27d44a46ebb883b5885732c4f30df4996177"
-dependencies = [
- "bitflags 1.3.2",
- "bstr",
- "btoi",
- "filetime",
- "gix-bitmap",
- "gix-features",
- "gix-hash",
- "gix-lock",
- "gix-object",
- "gix-traverse",
- "itoa",
- "memmap2",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gix-lock"
-version = "5.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41b80172055c5d8017a48ddac5cc7a95421c00211047db0165c97853c4f05194"
-dependencies = [
- "fastrand",
- "gix-tempfile",
- "thiserror",
-]
-
-[[package]]
-name = "gix-mailmap"
-version = "0.11.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2b66aea5e52875cd4915f4957a6f4b75831a36981e2ec3f5fad9e370e444fe1a"
-dependencies = [
- "bstr",
- "gix-actor",
- "thiserror",
-]
-
-[[package]]
-name = "gix-object"
-version = "0.28.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8df068db9180ee935fbb70504848369e270bdcb576b05c0faa8b9fd3b86fc017"
-dependencies = [
- "bstr",
- "btoi",
- "gix-actor",
- "gix-features",
- "gix-hash",
- "gix-validate",
- "hex",
- "itoa",
- "nom",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gix-odb"
-version = "0.43.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e83af2e3e36005bfe010927f0dff41fb5acc3e3d89c6f1174135b3a34086bda2"
-dependencies = [
- "arc-swap",
- "gix-features",
- "gix-hash",
- "gix-object",
- "gix-pack",
- "gix-path",
- "gix-quote",
- "parking_lot",
- "tempfile",
- "thiserror",
-]
-
-[[package]]
-name = "gix-pack"
-version = "0.33.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9401911c7fe032ad7b31c6a6b5be59cb283d1d6c999417a8215056efe6d635f3"
-dependencies = [
- "clru",
- "gix-chunk",
- "gix-diff",
- "gix-features",
- "gix-hash",
- "gix-hashtable",
- "gix-object",
- "gix-path",
- "gix-tempfile",
- "gix-traverse",
- "memmap2",
- "parking_lot",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gix-path"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32370dce200bb951df013e03dff35b4233fc7a89458642b047629b91734a7e19"
-dependencies = [
- "bstr",
- "thiserror",
-]
-
-[[package]]
-name = "gix-prompt"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f3034d4d935aef2c7bf719aaa54b88c520e82413118d886ae880a31d5bdee57"
-dependencies = [
- "gix-command",
- "gix-config-value",
- "nix",
- "parking_lot",
- "thiserror",
-]
-
-[[package]]
-name = "gix-quote"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a282f5a8d9ee0b09ec47390ac727350c48f2f5c76d803cd8da6b3e7ad56e0bcb"
-dependencies = [
- "bstr",
- "btoi",
- "thiserror",
-]
-
-[[package]]
-name = "gix-ref"
-version = "0.27.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4e909396ed3b176823991ccc391c276ae2a015e54edaafa3566d35123cfac9d"
-dependencies = [
- "gix-actor",
- "gix-features",
- "gix-hash",
- "gix-lock",
- "gix-object",
- "gix-path",
- "gix-tempfile",
- "gix-validate",
- "memmap2",
- "nom",
- "thiserror",
-]
-
-[[package]]
-name = "gix-refspec"
-version = "0.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aba332462bda2e8efeae4302b39a6ed01ad56ef772fd5b7ef197cf2798294d65"
-dependencies = [
- "bstr",
- "gix-hash",
- "gix-revision",
- "gix-validate",
- "smallvec",
- "thiserror",
-]
-
-[[package]]
-name = "gix-revision"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b12fc4bbc3161a5b2d68079fce93432cef8771ff88ca017abb01187fddfc41a1"
-dependencies = [
- "bstr",
- "gix-date",
- "gix-hash",
- "gix-hashtable",
- "gix-object",
- "thiserror",
-]
-
-[[package]]
-name = "gix-sec"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8ffa5bf0772f9b01de501c035b6b084cf9b8bb07dec41e3afc6a17336a65f47"
-dependencies = [
- "bitflags 1.3.2",
- "dirs",
- "gix-path",
- "libc",
- "windows 0.43.0",
-]
-
-[[package]]
-name = "gix-tempfile"
-version = "5.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2ceb30a610e3f5f2d5f9a5114689fde507ba9417705a8cf3429604275b2153c"
-dependencies = [
- "libc",
- "once_cell",
- "parking_lot",
- "signal-hook",
- "signal-hook-registry",
- "tempfile",
-]
-
-[[package]]
-name = "gix-traverse"
-version = "0.24.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd9a4a07bb22168dc79c60e1a6a41919d198187ca83d8a5940ad8d7122a45df3"
-dependencies = [
- "gix-hash",
- "gix-hashtable",
- "gix-object",
- "thiserror",
-]
-
-[[package]]
-name = "gix-url"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6a22b4b32ad14d68f7b7fb6458fa58d44b01797d94c1b8f4db2d9c7b3c366b5"
-dependencies = [
- "bstr",
- "gix-features",
- "gix-path",
- "home",
- "thiserror",
- "url",
-]
-
-[[package]]
-name = "gix-validate"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7bd629d3680773e1785e585d76fd4295b740b559cad9141517300d99a0c8c049"
-dependencies = [
- "bstr",
- "thiserror",
-]
-
-[[package]]
-name = "gix-worktree"
-version = "0.15.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54ec9a000b4f24af706c3cc680c7cda235656cbe3216336522f5692773b8a301"
-dependencies = [
- "bstr",
- "gix-attributes",
- "gix-features",
- "gix-glob",
- "gix-hash",
- "gix-index",
- "gix-object",
- "gix-path",
- "io-close",
- "thiserror",
-]
-
-[[package]]
-name = "globset"
-version = "0.4.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc"
-dependencies = [
- "aho-corasick",
- "bstr",
- "fnv",
- "log",
- "regex",
-]
-
-[[package]]
-name = "grep-matcher"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3902ca28f26945fe35cad349d776f163981d777fee382ccd6ef451126f51b319"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "grep-regex"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "997598b41d53a37a2e3fc5300d5c11d825368c054420a9c65125b8fe1078463f"
-dependencies = [
- "aho-corasick",
- "bstr",
- "grep-matcher",
- "log",
- "regex",
- "regex-syntax",
- "thread_local",
-]
-
-[[package]]
-name = "grep-searcher"
-version = "0.1.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5601c4b9f480f0c9ebb40b1f6cbf447b8a50c5369223937a6c5214368c58779f"
-dependencies = [
- "bstr",
- "bytecount",
- "encoding_rs",
- "encoding_rs_io",
- "grep-matcher",
- "log",
- "memmap2",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.12.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
-dependencies = [
- "ahash 0.7.6",
-]
-
-[[package]]
-name = "hashbrown"
-version = "0.13.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e"
-dependencies = [
- "ahash 0.8.3",
-]
-
-[[package]]
-name = "helix-core"
-version = "0.6.0"
-dependencies = [
- "ahash 0.8.3",
- "arc-swap",
- "bitflags 2.0.2",
- "chrono",
- "dunce",
- "encoding_rs",
- "etcetera",
- "hashbrown 0.13.2",
- "helix-loader",
- "imara-diff",
- "indoc",
- "log",
- "once_cell",
- "quickcheck",
- "regex",
- "ropey",
- "serde",
- "serde_json",
- "slotmap",
- "smallvec",
- "smartstring",
- "textwrap",
- "toml",
- "tree-sitter",
- "unicode-general-category",
- "unicode-segmentation",
- "unicode-width",
-]
-
-[[package]]
-name = "helix-dap"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "fern",
- "helix-core",
- "log",
- "serde",
- "serde_json",
- "thiserror",
- "tokio",
- "which",
-]
-
-[[package]]
-name = "helix-loader"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "cc",
- "etcetera",
- "libloading",
- "log",
- "once_cell",
- "serde",
- "threadpool",
- "toml",
- "tree-sitter",
-]
-
-[[package]]
-name = "helix-lsp"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "futures-executor",
- "futures-util",
- "helix-core",
- "helix-loader",
- "helix-parsec",
- "log",
- "lsp-types",
- "parking_lot",
- "serde",
- "serde_json",
- "thiserror",
- "tokio",
- "tokio-stream",
- "which",
-]
-
-[[package]]
-name = "helix-parsec"
-version = "0.6.0"
-
-[[package]]
-name = "helix-term"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "arc-swap",
- "chrono",
- "content_inspector",
- "crossterm",
- "fern",
- "futures-util",
- "fuzzy-matcher",
- "grep-regex",
- "grep-searcher",
- "helix-core",
- "helix-dap",
- "helix-loader",
- "helix-lsp",
- "helix-tui",
- "helix-vcs",
- "helix-view",
- "ignore",
- "indoc",
- "libc",
- "log",
- "once_cell",
- "pulldown-cmark",
- "serde",
- "serde_json",
- "signal-hook",
- "signal-hook-tokio",
- "smallvec",
- "tempfile",
- "tokio",
- "tokio-stream",
- "toml",
- "which",
-]
-
-[[package]]
-name = "helix-tui"
-version = "0.6.0"
-dependencies = [
- "bitflags 2.0.2",
- "cassowary",
- "crossterm",
- "helix-core",
- "helix-view",
- "log",
- "once_cell",
- "serde",
- "termini",
- "unicode-segmentation",
-]
-
-[[package]]
-name = "helix-vcs"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "arc-swap",
- "gix",
- "helix-core",
- "imara-diff",
- "log",
- "parking_lot",
- "tempfile",
- "tokio",
-]
-
-[[package]]
-name = "helix-view"
-version = "0.6.0"
-dependencies = [
- "anyhow",
- "arc-swap",
- "bitflags 2.0.2",
- "chardetng",
- "clipboard-win",
- "crossterm",
- "futures-util",
- "helix-core",
- "helix-dap",
- "helix-loader",
- "helix-lsp",
- "helix-tui",
- "helix-vcs",
- "libc",
- "log",
- "once_cell",
- "parking_lot",
- "serde",
- "serde_json",
- "slotmap",
- "tokio",
- "tokio-stream",
- "toml",
- "url",
- "which",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.2.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "hermit-abi"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
-
-[[package]]
-name = "hex"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
-
-[[package]]
-name = "home"
-version = "0.5.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "747309b4b440c06d57b0b25f2aee03ee9b5e5397d288c60e21fc709bb98a7408"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "iana-time-zone"
-version = "0.1.55"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "716f12fbcfac6ffab0a5e9ec51d0a0ff70503742bb2dc7b99396394c9dc323f0"
-dependencies = [
- "android_system_properties",
- "core-foundation-sys",
- "iana-time-zone-haiku",
- "js-sys",
- "wasm-bindgen",
- "windows 0.47.0",
-]
-
-[[package]]
-name = "iana-time-zone-haiku"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
-dependencies = [
- "cxx",
- "cxx-build",
-]
-
-[[package]]
-name = "idna"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
-dependencies = [
- "unicode-bidi",
- "unicode-normalization",
-]
-
-[[package]]
-name = "ignore"
-version = "0.4.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
-dependencies = [
- "globset",
- "lazy_static",
- "log",
- "memchr",
- "regex",
- "same-file",
- "thread_local",
- "walkdir",
- "winapi-util",
-]
-
-[[package]]
-name = "imara-diff"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e98c1d0ad70fc91b8b9654b1f33db55e59579d3b3de2bffdced0fdb810570cb8"
-dependencies = [
- "ahash 0.8.3",
- "hashbrown 0.12.3",
-]
-
-[[package]]
-name = "indexmap"
-version = "1.9.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
-dependencies = [
- "autocfg",
- "hashbrown 0.12.3",
-]
-
-[[package]]
-name = "indoc"
-version = "2.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9f2cb48b81b1dc9f39676bf99f5499babfec7cd8fe14307f7b3d747208fb5690"
-
-[[package]]
-name = "instant"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "io-close"
-version = "0.3.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9cadcf447f06744f8ce713d2d6239bb5bde2c357a452397a9ed90c625da390bc"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "io-lifetimes"
-version = "1.0.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09270fd4fa1111bc614ed2246c7ef56239a3063d5be0d1ec3b589c505d400aeb"
-dependencies = [
- "hermit-abi 0.3.1",
- "libc",
- "windows-sys",
-]
-
-[[package]]
-name = "itoa"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
-
-[[package]]
-name = "js-sys"
-version = "0.3.61"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
-dependencies = [
- "wasm-bindgen",
-]
-
-[[package]]
-name = "lazy_static"
-version = "1.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
-
-[[package]]
-name = "libc"
-version = "0.2.140"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
-
-[[package]]
-name = "libloading"
-version = "0.7.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
-dependencies = [
- "cfg-if",
- "winapi",
-]
-
-[[package]]
-name = "link-cplusplus"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5"
-dependencies = [
- "cc",
-]
-
-[[package]]
-name = "linux-raw-sys"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd550e73688e6d578f0ac2119e32b797a327631a42f9433e59d02e139c8df60d"
-
-[[package]]
-name = "lock_api"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df"
-dependencies = [
- "autocfg",
- "scopeguard",
-]
-
-[[package]]
-name = "log"
-version = "0.4.17"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
-dependencies = [
- "cfg-if",
-]
-
-[[package]]
-name = "lsp-types"
-version = "0.94.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b63735a13a1f9cd4f4835223d828ed9c2e35c8c5e61837774399f558b6a1237"
-dependencies = [
- "bitflags 1.3.2",
- "serde",
- "serde_json",
- "serde_repr",
- "url",
-]
-
-[[package]]
-name = "memchr"
-version = "2.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
-
-[[package]]
-name = "memmap2"
-version = "0.5.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "minimal-lexical"
-version = "0.2.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
-
-[[package]]
-name = "miniz_oxide"
-version = "0.6.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
-dependencies = [
- "adler",
-]
-
-[[package]]
-name = "mio"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9"
-dependencies = [
- "libc",
- "log",
- "wasi",
- "windows-sys",
-]
-
-[[package]]
-name = "nix"
-version = "0.26.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
-dependencies = [
- "bitflags 1.3.2",
- "cfg-if",
- "libc",
- "static_assertions",
-]
-
-[[package]]
-name = "nom"
-version = "7.1.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
-dependencies = [
- "memchr",
- "minimal-lexical",
-]
-
-[[package]]
-name = "num-integer"
-version = "0.1.45"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
-dependencies = [
- "autocfg",
- "num-traits",
-]
-
-[[package]]
-name = "num-traits"
-version = "0.2.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "num_cpus"
-version = "1.15.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
-dependencies = [
- "hermit-abi 0.2.6",
- "libc",
-]
-
-[[package]]
-name = "num_threads"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "once_cell"
-version = "1.17.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
-
-[[package]]
-name = "parking_lot"
-version = "0.12.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
-dependencies = [
- "lock_api",
- "parking_lot_core",
-]
-
-[[package]]
-name = "parking_lot_core"
-version = "0.9.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521"
-dependencies = [
- "cfg-if",
- "libc",
- "redox_syscall 0.2.16",
- "smallvec",
- "windows-sys",
-]
-
-[[package]]
-name = "percent-encoding"
-version = "2.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
-
-[[package]]
-name = "pin-project-lite"
-version = "0.2.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
-
-[[package]]
-name = "pin-utils"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
-
-[[package]]
-name = "proc-macro2"
-version = "1.0.54"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e472a104799c74b514a57226160104aa483546de37e839ec50e3c2e41dd87534"
-dependencies = [
- "unicode-ident",
-]
-
-[[package]]
-name = "prodash"
-version = "23.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9516b775656bc3e8985e19cd4b8c0c0de045095074e453d2c0a513b5f978392d"
-
-[[package]]
-name = "pulldown-cmark"
-version = "0.9.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63"
-dependencies = [
- "bitflags 1.3.2",
- "memchr",
- "unicase",
-]
-
-[[package]]
-name = "quickcheck"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
-dependencies = [
- "rand",
-]
-
-[[package]]
-name = "quote"
-version = "1.0.26"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
-dependencies = [
- "proc-macro2",
-]
-
-[[package]]
-name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "rand_core",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.2.16"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_syscall"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
-dependencies = [
- "bitflags 1.3.2",
-]
-
-[[package]]
-name = "redox_users"
-version = "0.4.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
-dependencies = [
- "getrandom",
- "redox_syscall 0.2.16",
- "thiserror",
-]
-
-[[package]]
-name = "regex"
-version = "1.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
-dependencies = [
- "aho-corasick",
- "memchr",
- "regex-syntax",
-]
-
-[[package]]
-name = "regex-automata"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
-
-[[package]]
-name = "regex-syntax"
-version = "0.6.29"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
-
-[[package]]
-name = "ropey"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "53ce7a2c43a32e50d666e33c5a80251b31147bb4b49024bcab11fb6f20c671ed"
-dependencies = [
- "smallvec",
- "str_indices",
-]
-
-[[package]]
-name = "rustix"
-version = "0.37.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e78cc525325c06b4a7ff02db283472f3c042b7ff0c391f96c6d5ac6f4f91b75"
-dependencies = [
- "bitflags 1.3.2",
- "errno",
- "io-lifetimes",
- "libc",
- "linux-raw-sys",
- "windows-sys",
-]
-
-[[package]]
-name = "ryu"
-version = "1.0.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
-
-[[package]]
-name = "same-file"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "scopeguard"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
-
-[[package]]
-name = "scratch"
-version = "1.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1"
-
-[[package]]
-name = "serde"
-version = "1.0.159"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c04e8343c3daeec41f58990b9d77068df31209f2af111e059e9fe9646693065"
-dependencies = [
- "serde_derive",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.159"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c614d17805b093df4b147b51339e7e44bf05ef59fba1e45d83500bcfb4d8585"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "serde_json"
-version = "1.0.95"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d721eca97ac802aa7777b701877c8004d950fc142651367300d21c1cc0194744"
-dependencies = [
- "itoa",
- "ryu",
- "serde",
-]
-
-[[package]]
-name = "serde_repr"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "serde_spanned"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0efd8caf556a6cebd3b285caf480045fcc1ac04f6bd786b09a6f11af30c4fcf4"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "sha1_smol"
-version = "1.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
-
-[[package]]
-name = "signal-hook"
-version = "0.3.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "732768f1176d21d09e076c23a93123d40bba92d50c4058da34d45c8de8e682b9"
-dependencies = [
- "libc",
- "signal-hook-registry",
-]
-
-[[package]]
-name = "signal-hook-mio"
-version = "0.2.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "29ad2e15f37ec9a6cc544097b78a1ec90001e9f71b81338ca39f430adaca99af"
-dependencies = [
- "libc",
- "mio",
- "signal-hook",
-]
-
-[[package]]
-name = "signal-hook-registry"
-version = "1.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1"
-dependencies = [
- "libc",
-]
-
-[[package]]
-name = "signal-hook-tokio"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213241f76fb1e37e27de3b6aa1b068a2c333233b59cca6634f634b80a27ecf1e"
-dependencies = [
- "futures-core",
- "libc",
- "signal-hook",
- "tokio",
-]
-
-[[package]]
-name = "slab"
-version = "0.4.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
-dependencies = [
- "autocfg",
-]
-
-[[package]]
-name = "slotmap"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "smallvec"
-version = "1.10.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
-
-[[package]]
-name = "smartstring"
-version = "1.0.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29"
-dependencies = [
- "autocfg",
- "static_assertions",
- "version_check",
-]
-
-[[package]]
-name = "smawk"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043"
-
-[[package]]
-name = "socket2"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
-dependencies = [
- "libc",
- "winapi",
-]
-
-[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
-name = "str-buf"
-version = "1.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e08d8363704e6c71fc928674353e6b7c23dcea9d82d7012c8faf2a3a025f8d0"
-
-[[package]]
-name = "str_indices"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f026164926842ec52deb1938fae44f83dfdb82d0a5b0270c5bd5935ab74d6dd"
-
-[[package]]
-name = "syn"
-version = "1.0.109"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "2.0.11"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "21e3787bb71465627110e7d87ed4faaa36c1f61042ee67badb9e2ef173accc40"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "tempfile"
-version = "3.5.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998"
-dependencies = [
- "cfg-if",
- "fastrand",
- "redox_syscall 0.3.5",
- "rustix",
- "windows-sys",
-]
-
-[[package]]
-name = "termcolor"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
-dependencies = [
- "winapi-util",
-]
-
-[[package]]
-name = "termini"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8c0f7ecb9c2a380d2686a747e4fc574043712326e8d39fbd220ab3bd29768a12"
-dependencies = [
- "dirs-next",
-]
-
-[[package]]
-name = "textwrap"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d"
-dependencies = [
- "smawk",
- "unicode-linebreak",
- "unicode-width",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
-dependencies = [
- "thiserror-impl",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.40"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "thread_local"
-version = "1.1.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
-dependencies = [
- "cfg-if",
- "once_cell",
-]
-
-[[package]]
-name = "threadpool"
-version = "1.8.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa"
-dependencies = [
- "num_cpus",
-]
-
-[[package]]
-name = "time"
-version = "0.3.20"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
-dependencies = [
- "itoa",
- "libc",
- "num_threads",
- "serde",
- "time-core",
- "time-macros",
-]
-
-[[package]]
-name = "time-core"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
-
-[[package]]
-name = "time-macros"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
-dependencies = [
- "time-core",
-]
-
-[[package]]
-name = "tinyvec"
-version = "1.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
-dependencies = [
- "tinyvec_macros",
-]
-
-[[package]]
-name = "tinyvec_macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
-
-[[package]]
-name = "tokio"
-version = "1.27.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0de47a4eecbe11f498978a9b29d792f0d2692d1dd003650c24c76510e3bc001"
-dependencies = [
- "autocfg",
- "bytes",
- "libc",
- "mio",
- "num_cpus",
- "parking_lot",
- "pin-project-lite",
- "signal-hook-registry",
- "socket2",
- "tokio-macros",
- "windows-sys",
-]
-
-[[package]]
-name = "tokio-macros"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "61a573bdc87985e9d6ddeed1b3d864e8a302c847e40d647746df2f1de209d1ce"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.11",
-]
-
-[[package]]
-name = "tokio-stream"
-version = "0.1.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fb52b74f05dbf495a8fba459fdc331812b96aa086d9eb78101fa0d4569c3313"
-dependencies = [
- "futures-core",
- "pin-project-lite",
- "tokio",
-]
-
-[[package]]
-name = "toml"
-version = "0.7.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b403acf6f2bb0859c93c7f0d967cb4a75a7ac552100f9322faf64dc047669b21"
-dependencies = [
- "serde",
- "serde_spanned",
- "toml_datetime",
- "toml_edit",
-]
-
-[[package]]
-name = "toml_datetime"
-version = "0.6.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3ab8ed2edee10b50132aed5f331333428b011c99402b5a534154ed15746f9622"
-dependencies = [
- "serde",
-]
-
-[[package]]
-name = "toml_edit"
-version = "0.19.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "239410c8609e8125456927e6707163a3b1fdb40561e4b803bc041f466ccfdc13"
-dependencies = [
- "indexmap",
- "serde",
- "serde_spanned",
- "toml_datetime",
- "winnow",
-]
-
-[[package]]
-name = "tree-sitter"
-version = "0.20.9"
-source = "git+https://github.com/tree-sitter/tree-sitter?rev=c51896d32dcc11a38e41f36e3deb1a6a9c4f4b14#c51896d32dcc11a38e41f36e3deb1a6a9c4f4b14"
-dependencies = [
- "cc",
- "regex",
-]
-
-[[package]]
-name = "unicase"
-version = "2.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6"
-dependencies = [
- "version_check",
-]
-
-[[package]]
-name = "unicode-bidi"
-version = "0.3.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
-
-[[package]]
-name = "unicode-bom"
-version = "1.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "63ec69f541d875b783ca40184d655f2927c95f0bffd486faa83cd3ac3529ec32"
-
-[[package]]
-name = "unicode-general-category"
-version = "0.6.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2281c8c1d221438e373249e065ca4989c4c36952c211ff21a0ee91c44a3869e7"
-
-[[package]]
-name = "unicode-ident"
-version = "1.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
-
-[[package]]
-name = "unicode-linebreak"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c5faade31a542b8b35855fff6e8def199853b2da8da256da52f52f1316ee3137"
-dependencies = [
- "hashbrown 0.12.3",
- "regex",
-]
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
-dependencies = [
- "tinyvec",
-]
-
-[[package]]
-name = "unicode-segmentation"
-version = "1.10.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
-
-[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
-name = "url"
-version = "2.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
-dependencies = [
- "form_urlencoded",
- "idna",
- "percent-encoding",
- "serde",
-]
-
-[[package]]
-name = "version_check"
-version = "0.9.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
-
-[[package]]
-name = "walkdir"
-version = "2.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
-dependencies = [
- "same-file",
- "winapi-util",
-]
-
-[[package]]
-name = "wasi"
-version = "0.11.0+wasi-snapshot-preview1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
-
-[[package]]
-name = "wasm-bindgen"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
-dependencies = [
- "cfg-if",
- "wasm-bindgen-macro",
-]
-
-[[package]]
-name = "wasm-bindgen-backend"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
-dependencies = [
- "bumpalo",
- "log",
- "once_cell",
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-macro"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
-dependencies = [
- "quote",
- "wasm-bindgen-macro-support",
-]
-
-[[package]]
-name = "wasm-bindgen-macro-support"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 1.0.109",
- "wasm-bindgen-backend",
- "wasm-bindgen-shared",
-]
-
-[[package]]
-name = "wasm-bindgen-shared"
-version = "0.2.84"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
-
-[[package]]
-name = "which"
-version = "4.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269"
-dependencies = [
- "either",
- "libc",
- "once_cell",
-]
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-
-[[package]]
-name = "winapi-util"
-version = "0.1.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
-dependencies = [
- "winapi",
-]
-
-[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows"
-version = "0.43.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04662ed0e3e5630dfa9b26e4cb823b817f1a9addda855d973a9458c236556244"
-dependencies = [
- "windows_aarch64_gnullvm 0.42.2",
- "windows_aarch64_msvc 0.42.2",
- "windows_i686_gnu 0.42.2",
- "windows_i686_msvc 0.42.2",
- "windows_x86_64_gnu 0.42.2",
- "windows_x86_64_gnullvm 0.42.2",
- "windows_x86_64_msvc 0.42.2",
-]
-
-[[package]]
-name = "windows"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2649ff315bee4c98757f15dac226efe3d81927adbb6e882084bb1ee3e0c330a7"
-dependencies = [
- "windows-targets 0.47.0",
-]
-
-[[package]]
-name = "windows-sys"
-version = "0.45.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
-dependencies = [
- "windows-targets 0.42.2",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
-dependencies = [
- "windows_aarch64_gnullvm 0.42.2",
- "windows_aarch64_msvc 0.42.2",
- "windows_i686_gnu 0.42.2",
- "windows_i686_msvc 0.42.2",
- "windows_x86_64_gnu 0.42.2",
- "windows_x86_64_gnullvm 0.42.2",
- "windows_x86_64_msvc 0.42.2",
-]
-
-[[package]]
-name = "windows-targets"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f8996d3f43b4b2d44327cd71b7b0efd1284ab60e6e9d0e8b630e18555d87d3e"
-dependencies = [
- "windows_aarch64_gnullvm 0.47.0",
- "windows_aarch64_msvc 0.47.0",
- "windows_i686_gnu 0.47.0",
- "windows_i686_msvc 0.47.0",
- "windows_x86_64_gnu 0.47.0",
- "windows_x86_64_gnullvm 0.47.0",
- "windows_x86_64_msvc 0.47.0",
-]
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
-
-[[package]]
-name = "windows_aarch64_gnullvm"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "831d567d53d4f3cb1db332b68e6e2b6260228eb4d99a777d8b2e8ed794027c90"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
-
-[[package]]
-name = "windows_aarch64_msvc"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a42d54a417c60ce4f0e31661eed628f0fa5aca73448c093ec4d45fab4c51cdf"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
-
-[[package]]
-name = "windows_i686_gnu"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c1925beafdbb22201a53a483db861a5644123157c1c3cee83323a2ed565d71e3"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
-
-[[package]]
-name = "windows_i686_msvc"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a8ef8f2f1711b223947d9b69b596cf5a4e452c930fb58b6fc3fdae7d0ec6b31"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
-
-[[package]]
-name = "windows_x86_64_gnu"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7acaa0c2cf0d2ef99b61c308a0c3dbae430a51b7345dedec470bd8f53f5a3642"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
-
-[[package]]
-name = "windows_x86_64_gnullvm"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5a0628f71be1d11e17ca4a0e9e15b3a5180f6fbf1c2d55e3ba3f850378052c1"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.42.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
-
-[[package]]
-name = "windows_x86_64_msvc"
-version = "0.47.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d6e62c256dc6d40b8c8707df17df8d774e60e39db723675241e7c15e910bce7"
-
-[[package]]
-name = "winnow"
-version = "0.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ae8970b36c66498d8ff1d66685dc86b91b29db0c7739899012f63a63814b4b28"
-dependencies = [
- "memchr",
-]
-
-[[package]]
-name = "xtask"
-version = "0.6.0"
-dependencies = [
- "helix-core",
- "helix-loader",
- "helix-term",
- "helix-view",
- "toml",
-]
diff --git a/pkgs/applications/editors/helix/default.nix b/pkgs/applications/editors/helix/default.nix
index caeb86d5551da..03ddac3b5ef08 100644
--- a/pkgs/applications/editors/helix/default.nix
+++ b/pkgs/applications/editors/helix/default.nix
@@ -1,33 +1,33 @@
-{ fetchzip, lib, rustPlatform, installShellFiles, makeWrapper }:
+{ fetchFromGitHub, lib, rustPlatform, installShellFiles, makeWrapper, callPackage }:
 
-rustPlatform.buildRustPackage rec {
-  pname = "helix";
-  version = "23.03";
+let
+  version = "23.05";
 
-  # This release tarball includes source code for the tree-sitter grammars,
-  # which is not ordinarily part of the repository.
-  src = fetchzip {
-    url = "https://github.com/helix-editor/helix/releases/download/${version}/helix-${version}-source.tar.xz";
-    hash = "sha256-FtY2V7za3WGeUaC2t2f63CcDUEg9zAS2cGUWI0YeGwk=";
-    stripRoot = false;
+  src = fetchFromGitHub {
+    owner = "helix-editor";
+    repo = "helix";
+    rev = "${version}";
+    hash = "sha256-Ws9uWtZLvTwL5HNonFr4YwyPoTU8QlCvhs6IJ92aLDw=";
   };
 
-  # should be removed, when tree-sitter is not used as a git checkout anymore
-  cargoLock = {
-    lockFile = ./Cargo.lock;
-    outputHashes = {
-      "tree-sitter-0.20.9" = "sha256-/PaFaASOT0Z8FpipX5uiRCjnv1kyZtg4B9+TnHA0yTY=";
-    };
-  };
+  grammars = callPackage ./grammars.nix { };
+in rustPlatform.buildRustPackage {
+  inherit src version;
+
+  pname = "helix";
+  # This release tarball includes source code for the tree-sitter grammars,
+  # which is not ordinarily part of the repository.
+  cargoSha256 = "sha256-/LCtfyDAA2JuioBD/CDMv6OOxM0B9A3PpuVP/YY5oF0=";
 
   nativeBuildInputs = [ installShellFiles makeWrapper ];
 
   postInstall = ''
-    # not needed at runtime
-    rm -r runtime/grammars/sources
+    # We self build the grammar files
+    rm -r runtime/grammars
 
     mkdir -p $out/lib
     cp -r runtime $out/lib
+    ln -s ${grammars} $out/lib/runtime/grammars
     installShellCompletion contrib/completion/hx.{bash,fish,zsh}
     mkdir -p $out/share/{applications,icons/hicolor/256x256/apps}
     cp contrib/Helix.desktop $out/share/applications
@@ -37,6 +37,11 @@ rustPlatform.buildRustPackage rec {
     wrapProgram $out/bin/hx --set HELIX_RUNTIME $out/lib/runtime
   '';
 
+  # disable fetching and building of tree-sitter grammars in favor of the custom build process in ./grammars.nix
+  env.HELIX_DISABLE_AUTO_GRAMMAR_BUILD = "1";
+
+  passthru.updateScript = ./update.py;
+
   meta = with lib; {
     description = "A post-modern modal text editor";
     homepage = "https://helix-editor.com";
diff --git a/pkgs/applications/editors/helix/grammars.nix b/pkgs/applications/editors/helix/grammars.nix
new file mode 100644
index 0000000000000..be764ac756936
--- /dev/null
+++ b/pkgs/applications/editors/helix/grammars.nix
@@ -0,0 +1,107 @@
+{
+  stdenv,
+  lib,
+  runCommand,
+  includeGrammarIf ? _: true,
+  fetchFromGitHub,
+  fetchgit,
+  ...
+}: let
+  # similiar to https://github.com/helix-editor/helix/blob/23.05/grammars.nix
+  grammars = builtins.fromJSON (builtins.readFile ./language-grammars.json);
+  isGitGrammar = grammar:
+    builtins.hasAttr "source" grammar
+    && builtins.hasAttr "git" grammar.source
+    && builtins.hasAttr "rev" grammar.source;
+  isGitHubGrammar = grammar: lib.hasPrefix "https://github.com" grammar.source.git;
+  toGitHubFetcher = url: let
+    match = builtins.match "https://github\.com/([^/]*)/([^/]*)/?" url;
+  in {
+    owner = builtins.elemAt match 0;
+    repo = builtins.elemAt match 1;
+  };
+  gitGrammars = builtins.filter isGitGrammar grammars;
+  buildGrammar = grammar: let
+    gh = toGitHubFetcher grammar.source.git;
+    sourceGit = fetchgit {
+      url = grammar.source.git;
+      inherit (grammar.source) rev sha256;
+    };
+    sourceGitHub = fetchFromGitHub {
+      owner = gh.owner;
+      repo = gh.repo;
+      inherit (grammar.source) rev sha256;
+    };
+    source =
+      if isGitHubGrammar grammar
+      then sourceGitHub
+      else sourceGit;
+  in
+    stdenv.mkDerivation rec {
+      # similar to tree-sitter grammar generation
+      pname = "helix-tree-sitter-grammar-${grammar.name}";
+      version = grammar.source.rev;
+
+      src =
+        if builtins.hasAttr "subpath" grammar.source
+        then "${source}/${grammar.source.subpath}"
+        else source;
+
+      dontUnpack = true;
+      dontConfigure = true;
+
+      FLAGS = [
+        "-I${src}/src"
+        "-g"
+        "-O3"
+        "-fPIC"
+        "-fno-exceptions"
+        "-Wl,-z,relro,-z,now"
+      ];
+
+      NAME = grammar.name;
+
+      buildPhase = ''
+        runHook preBuild
+
+        if [[ -e "$src/src/scanner.cc" ]]; then
+          $CXX -c "$src/src/scanner.cc" -o scanner.o $FLAGS
+        elif [[ -e "$src/src/scanner.c" ]]; then
+          $CC -c "$src/src/scanner.c" -o scanner.o $FLAGS
+        fi
+
+        $CC -c "$src/src/parser.c" -o parser.o $FLAGS
+        $CXX -shared -o $NAME.so *.o
+
+        runHook postBuild
+      '';
+
+      installPhase = ''
+        runHook preInstall
+        mkdir $out
+        mv $NAME.so $out/
+        runHook postInstall
+      '';
+
+      # Strip failed on darwin: strip: error: symbols referenced by indirect symbol table entries that can't be stripped
+      fixupPhase = lib.optionalString stdenv.isLinux ''
+        runHook preFixup
+        $STRIP $out/$NAME.so
+        runHook postFixup
+      '';
+    };
+  grammarsToBuild = builtins.filter includeGrammarIf gitGrammars;
+  builtGrammars =
+    builtins.map (grammar: {
+      inherit (grammar) name;
+      artifact = buildGrammar grammar;
+    })
+    grammarsToBuild;
+  grammarLinks =
+    builtins.map (grammar: "ln -s ${grammar.artifact}/${grammar.name}.so $out/${grammar.name}.so")
+    builtGrammars;
+in
+  runCommand "helix-tree-sitter-grammars" {} ''
+    mkdir -p $out
+    ${builtins.concatStringsSep "\n" grammarLinks}
+  ''
diff --git a/pkgs/applications/editors/helix/language-grammars.json b/pkgs/applications/editors/helix/language-grammars.json
new file mode 100644
index 0000000000000..31d4eb620a7c2
--- /dev/null
+++ b/pkgs/applications/editors/helix/language-grammars.json
@@ -0,0 +1 @@
+[{"name": "rust", "source": {"git": "https://github.com/tree-sitter/tree-sitter-rust", "rev": "0431a2c60828731f27491ee9fdefe25e250ce9c9", "sha256": "149jhy01mqvavwa8jlxb8bnn7sxpfq2x1w35si6zn60b7kqjlx8f"}}, {"name": "sway", "source": {"git": "https://github.com/FuelLabs/tree-sitter-sway", "rev": "e491a005ee1d310f4c138bf215afd44cfebf959c", "sha256": "0d9qszx7iy8dk68ic24gwdm9xm2636ig7nb3n76l5a1jnsk0i03d"}}, {"name": "toml", "source": {"git": "https://github.com/ikatyang/tree-sitter-toml", "rev": "7cff70bbcbbc62001b465603ca1ea88edd668704", "sha256": "001pjz32v1b3sawlab68fdqz4xwk0v65wj5cdbcav2w1d9n9rhcd"}}, {"name": "awk", "source": {"git": "https://github.com/Beaglefoot/tree-sitter-awk", "rev": "a799bc5da7c2a84bc9a06ba5f3540cf1191e4ee3", "sha256": "0rw9p60vf2119vvjqnr4an85bryr8nq7jh0pkhzwpy7xh0nszy83"}}, {"name": "protobuf", "source": {"git": "https://github.com/yusdacra/tree-sitter-protobuf", "rev": "19c211a01434d9f03efff99f85e19f967591b175", "sha256": "04gxmrc0xf6x96sv347i1p00jcai31ml0s1csj1iz5mjdzgsllhh"}}, {"name": "elixir", "source": {"git": "https://github.com/elixir-lang/tree-sitter-elixir", "rev": "b20eaa75565243c50be5e35e253d8beb58f45d56", "sha256": "1i0c0xki3sv24649p0ws7xs2jagbwg7z7baz1960239bj94nl487"}}, {"name": "fish", "source": {"git": "https://github.com/ram02z/tree-sitter-fish", "rev": "84436cf24c2b3176bfbb220922a0fdbd0141e406", "sha256": "12s3db2mg9qa8l1i4a5h59kd7kl5j83wyl5kzq7j2k56xmvq56x0"}}, {"name": "json", "source": {"git": "https://github.com/tree-sitter/tree-sitter-json", "rev": "73076754005a460947cafe8e03a8cf5fa4fa2938", "sha256": "1npf2hrx33jhjpmzcyi7aszg436m4d80sa6h4mhhkmx51q4kpcf1"}}, {"name": "c", "source": {"git": "https://github.com/tree-sitter/tree-sitter-c", "rev": "7175a6dd5fc1cee660dce6fe23f6043d75af424a", "sha256": "1w03r4l773ki4iq2xxsc2pqxf3pjsbybq3xq4glmnsihgylibn8v"}}, {"name": "cpp", "source": {"git": "https://github.com/tree-sitter/tree-sitter-cpp", "rev": "2d2c4aee8672af4c7c8edff68e7dd4c07e88d2b1", "sha256": "1fv87f5ba8gxqxaf5ykhgjvkilml920rbxhdcf9d7jkh794mccq6"}}, {"name": "c-sharp", "source": {"git": "https://github.com/tree-sitter/tree-sitter-c-sharp", "rev": "5b60f99545fea00a33bbfae5be956f684c4c69e2", "sha256": "1dzfnj9b5xgx0av4xyvd71i8bj3hxaq97s91np5jzd2vjvbvw7p1"}}, {"name": "go", "source": {"git": "https://github.com/tree-sitter/tree-sitter-go", "rev": "64457ea6b73ef5422ed1687178d4545c3e91334a", "sha256": "16d32m78y8jricba9xav35c9y0k2r29irj5xyqgq24323yln9jnz"}}, {"name": "gomod", "source": {"git": "https://github.com/camdencheek/tree-sitter-go-mod", "rev": "e8f51f8e4363a3d9a427e8f63f4c1bbc5ef5d8d0", "sha256": "09rkqwdwhsm41nrz73rqbajap4bc0spjcld9k9fr8xmlmqa67j2b"}}, {"name": "gotmpl", "source": {"git": "https://github.com/dannylongeuay/tree-sitter-go-template", "rev": "395a33e08e69f4155156f0b90138a6c86764c979", "sha256": "0v1ciqdr9zj3hrzg9rrikr6v72yjs25sk631kd32r024igpxflv2"}}, {"name": "gowork", "source": {"git": "https://github.com/omertuc/tree-sitter-go-work", "rev": "6dd9dd79fb51e9f2abc829d5e97b15015b6a8ae2", "sha256": "1kzrs4rpby3b0h87rbr02k55k3mmkmdy7rvl11q95b3ym0smmyqb"}}, {"name": "javascript", "source": {"git": "https://github.com/tree-sitter/tree-sitter-javascript", "rev": "4a95461c4761c624f2263725aca79eeaefd36cad", "sha256": "0za77agy25pj14hi93rjc1ib79l4q43lc5crgwnsc9d72pr8cwwm"}}, {"name": "typescript", "source": {"git": "https://github.com/tree-sitter/tree-sitter-typescript", "rev": "6aac031ad88dd6317f02ac0bb27d099a553a7d8c", "subpath": "typescript", "sha256": "012fyvk95pr11anypsi1cyxgj3has8zqlj74fwmcxd9f8pk7c595"}}, {"name": "tsx", "source": {"git": "https://github.com/tree-sitter/tree-sitter-typescript", "rev": "6aac031ad88dd6317f02ac0bb27d099a553a7d8c", "subpath": "tsx", "sha256": "012fyvk95pr11anypsi1cyxgj3has8zqlj74fwmcxd9f8pk7c595"}}, {"name": "css", "source": {"git": "https://github.com/tree-sitter/tree-sitter-css", "rev": "769203d0f9abe1a9a691ac2b9fe4bb4397a73c51", "sha256": "05875jmkkklx0b5g1h4qc8cbgcj8mr1n8slw7hsn0wssn7yn42z5"}}, {"name": "scss", "source": {"git": "https://github.com/serenadeai/tree-sitter-scss", "rev": "c478c6868648eff49eb04a4df90d703dc45b312a", "sha256": "15r3jiv36hzx2pmjmp63am3pbc01s52z36xfraa1aw4wlx7lqnq4"}}, {"name": "html", "source": {"git": "https://github.com/tree-sitter/tree-sitter-html", "rev": "29f53d8f4f2335e61bf6418ab8958dac3282077a", "sha256": "0wadphmgndj4vq9mg258624pj0klspbpcx8qlc6f8by5xbshvkmz"}}, {"name": "python", "source": {"git": "https://github.com/tree-sitter/tree-sitter-python", "rev": "de221eccf9a221f5b85474a553474a69b4b5784d", "sha256": "1mp2rqv6p2nla0sh1s5hprq32b9nkwbj2q21dcpvdcg6gack1sdf"}}, {"name": "nickel", "source": {"git": "https://github.com/nickel-lang/tree-sitter-nickel", "rev": "9d83db400b6c11260b9106f131f93ddda8131933", "sha256": "0rm63fnxja59zzkm7gz4vbzics8mdf7d6ijazcy9394kdqrcdzi6"}}, {"name": "nix", "source": {"git": "https://github.com/nix-community/tree-sitter-nix", "rev": "1b69cf1fa92366eefbe6863c184e5d2ece5f187d", "sha256": "0ls9djhpbbnjvd6b3166zjy92di0927f70720b57j2d3925538i5"}}, {"name": "ruby", "source": {"git": "https://github.com/tree-sitter/tree-sitter-ruby", "rev": "206c7077164372c596ffa8eaadb9435c28941364", "sha256": "1pqr24bj68lgi1w2cblr8asfby681l3032jrppq4n9x5zm23fi6n"}}, {"name": "bash", "source": {"git": "https://github.com/tree-sitter/tree-sitter-bash", "rev": "275effdfc0edce774acf7d481f9ea195c6c403cd", "sha256": "14ficjp82cdamylgx090z3rkr5b2q04i2w3854yavli9zf57lwpr"}}, {"name": "php", "source": {"git": "https://github.com/tree-sitter/tree-sitter-php", "rev": "f860e598194f4a71747f91789bf536b393ad4a56", "sha256": "02yc5b3qps8ghsmy4b5m5kldyr5pnqz9yw663v13pnz92r84k14g"}}, {"name": "twig", "source": {"git": "https://github.com/gbprod/tree-sitter-twig", "rev": "807b293fec3fead64f54c64fdf6fb05516c032b9", "sha256": "17ifa0k4z8gcs54b0hvaibdhnfpa6r54qr82c8j5p1fzahrsdb3i"}}, {"name": "latex", "source": {"git": "https://github.com/latex-lsp/tree-sitter-latex", "rev": "8c75e93cd08ccb7ce1ccab22c1fbd6360e3bcea6", "sha256": "0lc42x604f04x3kkp88vyqa5dx90wqyisiwl7nn861lyxl6phjnf"}}, {"name": "bibtex", "source": {"git": "https://github.com/latex-lsp/tree-sitter-bibtex", "rev": "ccfd77db0ed799b6c22c214fe9d2937f47bc8b34", "sha256": "0m7f3dkqbmy8x1bhl11m8f4p6n76wfvh99rp46zrqv39355nw1y2"}}, {"name": "lean", "source": {"git": "https://github.com/Julian/tree-sitter-lean", "rev": "d98426109258b266e1e92358c5f11716d2e8f638", "sha256": "0sc5h0fan8cmpxxf2jizky0ynmr81qs9q7xgh9zrmdi69r59p0sk"}}, {"name": "julia", "source": {"git": "https://github.com/tree-sitter/tree-sitter-julia", "rev": "8fb38abff74652c4faddbf04d2d5bbbc6b4bae25", "sha256": "06h5nyxw72z3w5a62y59332w2xg90sm3c2j6na7vvf7nark7vb8v"}}, {"name": "java", "source": {"git": "https://github.com/tree-sitter/tree-sitter-java", "rev": "09d650def6cdf7f479f4b78f595e9ef5b58ce31e", "sha256": "0440xh8x8rkbdlc1f1ail9wzl4583l29ic43x9lzl8290bm64q5l"}}, {"name": "ledger", "source": {"git": "https://github.com/cbarrete/tree-sitter-ledger", "rev": "1f864fb2bf6a87fe1b48545cc6adc6d23090adf7", "sha256": "1qxdad40nladdnq6d2s1z7fxlwjz8llpj85da792pv7p7dwh95vd"}}, {"name": "beancount", "source": {"git": "https://github.com/polarmutex/tree-sitter-beancount", "rev": "4cbd1f09cd07c1f1fabf867c2cf354f9da53cc4c", "sha256": "0igv4nal56d4ppj9zpdjc9i49r755dcvz3csfrps0d0p2v47y7sj"}}, {"name": "ocaml", "source": {"git": "https://github.com/tree-sitter/tree-sitter-ocaml", "rev": "23d419ba45789c5a47d31448061557716b02750a", "subpath": "ocaml", "sha256": "1bh3afd3iix0gf6ldjngf2c65nyfdwvbmsq25gcxm04jwbg9c6k8"}}, {"name": "ocaml-interface", "source": {"git": "https://github.com/tree-sitter/tree-sitter-ocaml", "rev": "23d419ba45789c5a47d31448061557716b02750a", "subpath": "interface", "sha256": "1bh3afd3iix0gf6ldjngf2c65nyfdwvbmsq25gcxm04jwbg9c6k8"}}, {"name": "lua", "source": {"git": "https://github.com/MunifTanjim/tree-sitter-lua", "rev": "887dfd4e83c469300c279314ff1619b1d0b85b91", "sha256": "1lv3mp0xm5ac9440gcskcxy0hzsnddvcysix1k5axy1cl4vr8bz6"}}, {"name": "svelte", "source": {"git": "https://github.com/Himujjal/tree-sitter-svelte", "rev": "349a5984513b4a4a9e143a6e746120c6ff6cf6ed", "sha256": "0yyzp836c2q4k5dpywb5m5dxh8h53f3l5gcm5qi5bb8qisvccm6n"}}, {"name": "vue", "source": {"git": "https://github.com/ikatyang/tree-sitter-vue", "rev": "91fe2754796cd8fba5f229505a23fa08f3546c06", "sha256": "0l0kqy9ajm5izqcywd39aavgmc281s8qrhmjkbwl6r8arfj8vsrm"}}, {"name": "yaml", "source": {"git": "https://github.com/ikatyang/tree-sitter-yaml", "rev": "0e36bed171768908f331ff7dff9d956bae016efb", "sha256": "0wyvjh62zdp5bhd2y8k7k7x4wz952l55i1c8d94rhffsbbf9763f"}}, {"name": "haskell", "source": {"git": "https://github.com/tree-sitter/tree-sitter-haskell", "rev": "98fc7f59049aeb713ab9b72a8ff25dcaaef81087", "sha256": "15b2xypg7npa6q1w8nhd5jrcpwyy52z8n6s5b1j1n006aacg6fq4"}}, {"name": "zig", "source": {"git": "https://github.com/maxxnino/tree-sitter-zig", "rev": "8d3224c3bd0890fe08358886ebf54fca2ed448a6", "sha256": "0mw4s92qmxkh9a13h9hg6kv9b704vzx3kr4j6dap0c80dffvfjhk"}}, {"name": "tsq", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-tsq", "rev": "48b5e9f82ae0a4727201626f33a17f69f8e0ff86", "sha256": "015zsvwwm58b5yzk6dl3kzdpg142qpvbb3fv7804jbjqwi1xy8di"}}, {"name": "cmake", "source": {"git": "https://github.com/uyha/tree-sitter-cmake", "rev": "6e51463ef3052dd3b328322c22172eda093727ad", "sha256": "14l7l6cc9pdqinff9hjda7rakzfvwk0qcbv6djl0s9f21875l4nv"}}, {"name": "make", "source": {"git": "https://github.com/alemuller/tree-sitter-make", "rev": "a4b9187417d6be349ee5fd4b6e77b4172c6827dd", "sha256": "07gz4x12xhigar2plr3jgazb2z4f9xp68nscmvy9a7wafak9l2m9"}}, {"name": "glsl", "source": {"git": "https://github.com/theHamsta/tree-sitter-glsl", "rev": "88408ffc5e27abcffced7010fc77396ae3636d7e", "sha256": "1zsj20xxv8mcj991gyp2gi2h31p16znkjxgbw5lpymj3nz7w22ld"}}, {"name": "perl", "source": {"git": "https://github.com/ganezdragon/tree-sitter-perl", "rev": "0ac2c6da562c7a2c26ed7e8691d4a590f7e8b90a", "sha256": "184zaicrl9i4cywhyc2cxpghw7daz9pi0fhwkkgpv7j6kvp1ig2w"}}, {"name": "comment", "source": {"git": "https://github.com/stsewd/tree-sitter-comment", "rev": "5dd3c62f1bbe378b220fe16b317b85247898639e", "sha256": "1wk6lxzndaikbrn72pa54y59qs0xnfaffc8mxmm6c5v5x16l8vb3"}}, {"name": "wgsl", "source": {"git": "https://github.com/szebniok/tree-sitter-wgsl", "rev": "272e89ef2aeac74178edb9db4a83c1ffef80a463", "sha256": "02nrgw6ypblr226r3d2wh6nn8x6bb3f16ix8anbppgrkzhfam3f7"}}, {"name": "llvm", "source": {"git": "https://github.com/benwilliamgraham/tree-sitter-llvm", "rev": "3b213925b9c4f42c1acfe2e10bfbb438d9c6834d", "sha256": "0ymrdcajji11852c158w67mgcsycphwj9mh777q3n4jn8pp37y8j"}}, {"name": "llvm-mir", "source": {"git": "https://github.com/Flakebi/tree-sitter-llvm-mir", "rev": "06fabca19454b2dc00c1b211a7cb7ad0bc2585f1", "sha256": "1a3ymx9baspxcjvgb0i7369zg42ikl5nf61f9b1y18azs940l35r"}}, {"name": "tablegen", "source": {"git": "https://github.com/Flakebi/tree-sitter-tablegen", "rev": "568dd8a937347175fd58db83d4c4cdaeb6069bd2", "sha256": "1w03navfgpgg4db9x0xvr2z0l8m07nma4icv0fwdgin4nk59lp4l"}}, {"name": "markdown", "source": {"git": "https://github.com/MDeiml/tree-sitter-markdown", "rev": "fa6bfd51727e4bef99f7eec5f43947f73d64ea7d", "subpath": "tree-sitter-markdown", "sha256": "0wryvq7153a3jx9qs1plm5crlgd88sm1ymlqc3gs09mr2n456z9z"}}, {"name": "markdown_inline", "source": {"git": "https://github.com/MDeiml/tree-sitter-markdown", "rev": "fa6bfd51727e4bef99f7eec5f43947f73d64ea7d", "subpath": "tree-sitter-markdown-inline", "sha256": "0wryvq7153a3jx9qs1plm5crlgd88sm1ymlqc3gs09mr2n456z9z"}}, {"name": "dart", "source": {"git": "https://github.com/UserNobody14/tree-sitter-dart", "rev": "2d7f66651c9319c1a0e4dda226cc2628fbb66528", "sha256": "16shxpm2jbq2qscr2pxjh5kzqf9cw6p8k1divg91nnbqhxkghfbs"}}, {"name": "scala", "source": {"git": "https://github.com/tree-sitter/tree-sitter-scala", "rev": "f6bbf35de41653b409ca9a3537a154f2b095ef64", "sha256": "09nhmil016nqdh389ral30ymmaap07vzvab0di899khg8bjq7l8q"}}, {"name": "dockerfile", "source": {"git": "https://github.com/camdencheek/tree-sitter-dockerfile", "rev": "8ee3a0f7587b2bd8c45c8cb7d28bd414604aec62", "sha256": "0izv8fryh7vivh9nbpzqpxb74fanrnd21bbq8xzazz4dvgfd7g93"}}, {"name": "git-commit", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-git-commit", "rev": "db88cffa3952dd2328b741af5d0fc69bdb76704f", "sha256": "08w9kkmarm5g6hi5yxk4nspkq0k0vxk7kjwvbzdifiphrs5pzf5g"}}, {"name": "diff", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-diff", "rev": "fd74c78fa88a20085dbc7bbeaba066f4d1692b63", "sha256": "0lbadj3657yk6r46sffbzkmm1kp47rydhsn1bj1w1mnyr27bfvrf"}}, {"name": "git-rebase", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-git-rebase", "rev": "d8a4207ebbc47bd78bacdf48f883db58283f9fd8", "sha256": "16g3i69jxq7fm2nis2d61bcj1r84sbr1drbmjd6zwm8rxkdnxd4r"}}, {"name": "regex", "source": {"git": "https://github.com/tree-sitter/tree-sitter-regex", "rev": "e1cfca3c79896ff79842f057ea13e529b66af636", "sha256": "0j6j0h8ciyhgmcq9iy3843anyfvd7s0biqzgbsqgwbgbqbg2nfwl"}}, {"name": "git-config", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-git-config", "rev": "0e4f0baf90b57e5aeb62dcdbf03062c6315d43ea", "sha256": "0hp45mvzbnpzjzxikwzyb7jzv4fyz19jllj78qm35sba4yc942ym"}}, {"name": "gitattributes", "source": {"git": "https://github.com/mtoohey31/tree-sitter-gitattributes", "rev": "3dd50808e3096f93dccd5e9dc7dc3dba2eb12dc4", "sha256": "1idi1hrpkc17y5vi2h0vfwzw64w6wy4cz4yk08avqnms6mxkxq94"}}, {"name": "gitignore", "source": {"git": "https://github.com/shunsambongi/tree-sitter-gitignore", "rev": "f4685bf11ac466dd278449bcfe5fd014e94aa504", "sha256": "17rar33y4dngmx69kjiw6wgrsd6kc0c8w4xa4rx06rjmv7b1hfij"}}, {"name": "graphql", "source": {"git": "https://github.com/bkegley/tree-sitter-graphql", "rev": "5e66e961eee421786bdda8495ed1db045e06b5fe", "sha256": "0xvrd6p9rxdjpqfq575ap6hpl2f7dad5i4d4m05w1qk9jx33vw9n"}}, {"name": "elm", "source": {"git": "https://github.com/elm-tooling/tree-sitter-elm", "rev": "df4cb639c01b76bc9ac9cc66788709a6da20002c", "sha256": "14il4yv65w7l29s84ilp3w3v9hy7x8j2bg73wwjyazava6n0f41y"}}, {"name": "iex", "source": {"git": "https://github.com/elixir-lang/tree-sitter-iex", "rev": "39f20bb51f502e32058684e893c0c0b00bb2332c", "sha256": "10lwwh3v2cc39hcydz5p899grzy50gr46bbddhs9vaam7wrp25b1"}}, {"name": "rescript", "source": {"git": "https://github.com/jaredramirez/tree-sitter-rescript", "rev": "65609807c628477f3b94052e7ef895885ac51c3c", "sha256": "0d8whkyyvjf270m6zr3jhc1s5zdwsf05dfnzs5r3jzb6qmm52x2k"}}, {"name": "erlang", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-erlang", "rev": "ce0ed253d72c199ab93caba7542b6f62075339c4", "sha256": "04l9svgmk8z5vgb2mvcfwijdl7jmyqi9cgfzzyak0z011f4f9zhi"}}, {"name": "kotlin", "source": {"git": "https://github.com/fwcd/tree-sitter-kotlin", "rev": "a4f71eb9b8c9b19ded3e0e9470be4b1b77c2b569", "sha256": "051x0p02dkx0rz83sy70wczm6k5b938q4knhh8halv2acs32l4v9"}}, {"name": "hcl", "source": {"git": "https://github.com/MichaHoffmann/tree-sitter-hcl", "rev": "3cb7fc28247efbcb2973b97e71c78838ad98a583", "sha256": "0hg7w3hsvxjwz1rb1izknn46msm4mkjx2cnq603lzn7i9mb1pbyr"}}, {"name": "org", "source": {"git": "https://github.com/milisims/tree-sitter-org", "rev": "698bb1a34331e68f83fc24bdd1b6f97016bb30de", "sha256": "0adzb2kw8k3w75p5f3ax9lal64k8n2fwrmrqak2z2w8jl8cgagl6"}}, {"name": "solidity", "source": {"git": "https://github.com/JoranHonig/tree-sitter-solidity", "rev": "9004b86531cb424bd379424cf7266a4585f2af7d", "sha256": "056srr5z0fz9pz3fwrbzx095jj7f5zsm20qb8y8pdar5lkzy5ipw"}}, {"name": "gleam", "source": {"git": "https://github.com/gleam-lang/tree-sitter-gleam", "rev": "ae79782c00656945db69641378e688cdb78d52c1", "sha256": "10lzz5jw7vh3laa721x7312y9irgi88w147cj7fj3g6q14wlsg7k"}}, {"name": "robot", "source": {"git": "https://github.com/Hubro/tree-sitter-robot", "rev": "f1142bfaa6acfce95e25d2c6d18d218f4f533927", "sha256": "1pnrycxsx5hapxfdj2n3nrjym550yb4ppfml8zvllj3cjqagrp9m"}}, {"name": "r", "source": {"git": "https://github.com/r-lib/tree-sitter-r", "rev": "cc04302e1bff76fa02e129f332f44636813b0c3c", "sha256": "0adq1qng3ghb4wvglplj73q8c95hzpfiqb2q8bqnms81i7p2xma7"}}, {"name": "swift", "source": {"git": "https://github.com/alex-pinkus/tree-sitter-swift", "rev": "77c6312c8438f4dbaa0350cec92b3d6dd3d74a66", "sha256": "1fblqm8hyd6hbydzpcpm3lmlhfcifsq31r3ibvhgckfl64afhckv"}}, {"name": "embedded-template", "source": {"git": "https://github.com/tree-sitter/tree-sitter-embedded-template", "rev": "d21df11b0ecc6fd211dbe11278e92ef67bd17e97", "sha256": "0h3nj6fz512riyx2b65pg9pjprkpkasnglwljlzi6s1in9fdig3x"}}, {"name": "eex", "source": {"git": "https://github.com/connorlay/tree-sitter-eex", "rev": "f742f2fe327463335e8671a87c0b9b396905d1d1", "sha256": "19n07ywavwkh4p189d18wxhch45qgn094b7mkdymh60zr7cbmyjh"}}, {"name": "heex", "source": {"git": "https://github.com/phoenixframework/tree-sitter-heex", "rev": "2e1348c3cf2c9323e87c2744796cf3f3868aa82a", "sha256": "04yzzqfxinsh62l7750grflxg809m8y3qlbmc1vknk2xk34l9d78"}}, {"name": "sql", "source": {"git": "https://github.com/DerekStride/tree-sitter-sql", "rev": "3a3f92b29c880488a08bc2baaf1aca6432ec3380", "sha256": "1jy9c553b2fzv7q9n8b0hs0yr00xd5mhd1v2lbbcfrk7x9jfrnsi"}}, {"name": "gdscript", "source": {"git": "https://github.com/PrestonKnopp/tree-sitter-gdscript", "rev": "a4b57cc3bcbfc24550e858159647e9238e7ad1ac", "sha256": "0mppjapxsdch9wwqklnfb0cs7xwja333w6wzygykzrb7nna50lfz"}}, {"name": "godot-resource", "source": {"git": "https://github.com/PrestonKnopp/tree-sitter-godot-resource", "rev": "b6ef0768711086a86b3297056f9ffb5cc1d77b4a", "sha256": "0agnvg95fx60xkr5fivl1x3yhcw6ca58f7bpx3dq6fl7pyfgrky2"}}, {"name": "nu", "source": {"git": "https://github.com/LhKipp/tree-sitter-nu", "rev": "eb95bdac3abd73ef47e53f19c63e74a31405ebd2", "sha256": "06rhwprkyr0snkynq3ialgycynp8b4i95sxyqfbj7qvj49vnc6nq"}}, {"name": "vala", "source": {"git": "https://github.com/vala-lang/tree-sitter-vala", "rev": "c9eea93ba2ec4ec1485392db11945819779745b3", "sha256": "0xzszj8c5nkk8nccspbiz68aw3ki6pi75ngwrrfqdipxy7ncd70j"}}, {"name": "hare", "source": {"git": "https://git.sr.ht/~ecmma/tree-sitter-hare", "rev": "bc26a6a949f2e0d98b7bfc437d459b250900a165", "sha256": "0hlir7xw14xdm7jxchqr228zln8ag73lv45b0x8a2v9iac2smjdv"}}, {"name": "devicetree", "source": {"git": "https://github.com/joelspadin/tree-sitter-devicetree", "rev": "877adbfa0174d25894c40fa75ad52d4515a36368", "sha256": "1ds7pa4x1yd54xa2mba37vp8lbi8n4l975lps0249x8xw35r0jrl"}}, {"name": "cairo", "source": {"git": "https://github.com/archseer/tree-sitter-cairo", "rev": "b249662a1eefeb4d71c9529cdd971e74fecc10fe", "sha256": "1vgwr3qm1y1ajrma3wlnkwrwg5466mkm35pqzb39vlcgh1575xrv"}}, {"name": "cpon", "source": {"git": "https://github.com/fvacek/tree-sitter-cpon", "rev": "0d01fcdae5a53191df5b1349f9bce053833270e7", "sha256": "1ar8dfjjg1pp9i403jm21d4b70xi2w4kjdmwnxlc597582jkjx56"}}, {"name": "odin", "source": {"git": "https://github.com/ap29600/tree-sitter-odin", "rev": "b219207e49ffca2952529d33e94ed63b1b75c4f1", "sha256": "1wj8fb0dk1c5dzkn165pbk4qky77bzqnpvv30981zgjszl508r1l"}}, {"name": "meson", "source": {"git": "https://github.com/staysail/tree-sitter-meson", "rev": "32a83e8f200c347232fa795636cfe60dde22957a", "sha256": "0g1kc1hidva3ipi4nsi64r9pm8jc48nmhffqshwvbiss0fdf8ac9"}}, {"name": "sshclientconfig", "source": {"git": "https://github.com/metio/tree-sitter-ssh-client-config", "rev": "e45c6d5c71657344d4ecaf87dafae7736f776c57", "sha256": "1gbvzdysdz2gri7k2bxjchn34cdh0l7y4rfxgs0s8nxz73fpyfaj"}}, {"name": "scheme", "source": {"git": "https://github.com/6cdh/tree-sitter-scheme", "rev": "c0741320bfca6b7b5b7a13b5171275951e96a842", "sha256": "12knvhmayck9da3zj2w55al4yjhkkr9gxmfdmrjiz7vn9wc1dxr9"}}, {"name": "v", "source": {"git": "https://github.com/vlang/vls", "subpath": "tree_sitter_v", "rev": "66cf9d3086fb5ecc827cb32c64c5d812ab17d2c6", "sha256": "11g9wxvia39f5sik7zxl1v06kks8s9rqp5ip6g6z26wz1585vlzx"}}, {"name": "verilog", "source": {"git": "https://github.com/andreytkachenko/tree-sitter-verilog", "rev": "514d8d70593d29ef3ef667fa6b0e504ae7c977e3", "sha256": "0abnfll1kl7kn0sg8bpmhahszgfyh2s2ld930pb5z6706lsg07pp"}}, {"name": "edoc", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-edoc", "rev": "74774af7b45dd9cefbf9510328fc6ff2374afc50", "sha256": "1qz6hghnyhrgm23793hyw84zxzrhb3jc1prih806hirzybbapc80"}}, {"name": "jsdoc", "source": {"git": "https://github.com/tree-sitter/tree-sitter-jsdoc", "rev": "189a6a4829beb9cdbe837260653b4a3dfb0cc3db", "sha256": "0qpsy234p30j6955wpjlaqwbr21bi56p0ln5vhrd84s99ac7s6b6"}}, {"name": "openscad", "source": {"git": "https://github.com/bollian/tree-sitter-openscad", "rev": "5c3ce93df0ac1da7197cf6ae125aade26d6b8972", "sha256": "1bimdd71899i454k9638jg5m97scxcvqsn4szy1i9d0lwx8wp05p"}}, {"name": "prisma", "source": {"git": "https://github.com/victorhqc/tree-sitter-prisma", "rev": "eca2596a355b1a9952b4f80f8f9caed300a272b5", "sha256": "19zb3dkwp2kpyivygqxk8yph0jpl7hn9zzcry15mshn2n0rs9sih"}}, {"name": "clojure", "source": {"git": "https://github.com/sogaiu/tree-sitter-clojure", "rev": "e57c569ae332ca365da623712ae1f50f84daeae2", "sha256": "0hq8rv4s0gzbfv3qj4gsrm87baiy6k1hyfbhbbpwbrcpd8jl7gdn"}}, {"name": "elvish", "source": {"git": "https://github.com/ckafi/tree-sitter-elvish", "rev": "e50787cadd3bc54f6d9c0704493a79078bb8a4e5", "sha256": "1xw9mqq3p64lgli6nvlavrrlg29nfj2fbg7rr2jw1jcjk8lgxv1p"}}, {"name": "fortran", "source": {"git": "https://github.com/stadelmanma/tree-sitter-fortran", "rev": "f0f2f100952a353e64e26b0fa710b4c296d7af13", "sha256": "17iiz38s7adkzv9rw97nn5nd9kvn1vyccm7r6ywipaa5aim0nm6a"}}, {"name": "ungrammar", "source": {"git": "https://github.com/Philipp-M/tree-sitter-ungrammar", "rev": "0113de880a58ea14f2a75802e9b99fcc25003d9c", "sha256": "1lbrnsqmfhgwad78c6r8dxv1d9g2dgpbdd6qyj7sgmx43khv2vw4"}}, {"name": "dot", "source": {"git": "https://github.com/rydesun/tree-sitter-dot", "rev": "917230743aa10f45a408fea2ddb54bbbf5fbe7b7", "sha256": "1q2rbv16dihlmrbxlpn0x03na7xp8rdhf58vwm3lryn3nfcjckn2"}}, {"name": "cue", "source": {"git": "https://github.com/eonpatapon/tree-sitter-cue", "rev": "61843e3beebf19417e4fede4e8be4df1084317ad", "sha256": "15cmlkip9nl6yxkbkv0lp7prfyrhri94szqg3vn7a90s4zjkfx99"}}, {"name": "slint", "source": {"git": "https://github.com/jrmoulton/tree-sitter-slint", "rev": "0d4dda94f96623302dfc234e06be62a5717f47da", "sha256": "0pvzm0zir1zf1pv4mjzcy95irdcs9ypj9m8i204szb7d3sfzkybz"}}, {"name": "task", "source": {"git": "https://github.com/alexanderbrevig/tree-sitter-task", "rev": "f2cb435c5dbf3ee19493e224485d977cb2d36d8b", "sha256": "0zg27cs6naj2laf2fa0xmxzg4xpkqpgj10f0va3ay7wzwm2004fc"}}, {"name": "xit", "source": {"git": "https://github.com/synaptiko/tree-sitter-xit", "rev": "7d7902456061bc2ad21c64c44054f67b5515734c", "sha256": "0lj3p8grbb8527k23mibn2cfxzrikpgwv4qmlcfnvsqqhqfc83w7"}}, {"name": "esdl", "source": {"git": "https://github.com/greym0uth/tree-sitter-esdl", "rev": "b840c8a8028127e0a7c6e6c45141adade2bd75cf", "sha256": "1dyqqjawnmd4xzs22c9agh9n40f636hjd5nbvrr17abphy52z349"}}, {"name": "pascal", "source": {"git": "https://github.com/Isopod/tree-sitter-pascal", "rev": "2fd40f477d3e2794af152618ccfac8d92eb72a66", "sha256": "11zjwk8wpx2b565sf82mh02bp5iswhmfykzdqfk0qwasr9ka2w7y"}}, {"name": "sml", "source": {"git": "https://github.com/Giorbo/tree-sitter-sml", "rev": "bd4055d5554614520d4a0706b34dc0c317c6b608", "sha256": "0yx0yb7cr0v2w8y8zi8nxsvwnwbbaj4fwaqffgky58pd665gvsbw"}}, {"name": "jsonnet", "source": {"git": "https://github.com/sourcegraph/tree-sitter-jsonnet", "rev": "0475a5017ad7dc84845d1d33187f2321abcb261d", "sha256": "1dh8wqi8mnsapzicrdjg6cj6skj9f2ia4ijg08pl45bcxc1lidzc"}}, {"name": "astro", "source": {"git": "https://github.com/virchau13/tree-sitter-astro", "rev": "5f5c3e73c45967df9aa42f861fad2d77cd4e0900", "sha256": "06nj6yzkmh0bl6whqazlx0a554h0zxk9zgrlkv4vmphvd714bc7y"}}, {"name": "bass", "source": {"git": "https://github.com/vito/tree-sitter-bass", "rev": "501133e260d768ed4e1fd7374912ed5c86d6fd90", "sha256": "14zs56rb53qzkx9l9hgpn41q2nycrrdh2jdbybq55w34gcgg6sh2"}}, {"name": "wat", "source": {"git": "https://github.com/wasm-lsp/tree-sitter-wasm", "rev": "2ca28a9f9d709847bf7a3de0942a84e912f59088", "subpath": "wat", "sha256": "02v08hs9wirdzfx9a7c3kpn0cpc9i867pw28qka0fid9q537hnbb"}}, {"name": "wast", "source": {"git": "https://github.com/wasm-lsp/tree-sitter-wasm", "rev": "2ca28a9f9d709847bf7a3de0942a84e912f59088", "subpath": "wast", "sha256": "02v08hs9wirdzfx9a7c3kpn0cpc9i867pw28qka0fid9q537hnbb"}}, {"name": "d", "source": {"git": "https://github.com/gdamore/tree-sitter-d", "rev": "601c4a1e8310fb2f3c43fa8a923d0d27497f3c04", "sha256": "1ml1589pjb2sknsmz770ywfw37dvypnf1576qs9473r6cj4ng496"}}, {"name": "vhs", "source": {"git": "https://github.com/charmbracelet/tree-sitter-vhs", "rev": "c6d81f34c011c29ee86dd73b45a8ecc9f2e2bdaf", "sha256": "1pdz99rdvjf82vyfsp7g6dsgjjibfj5w37rdyix41lvwiyh9nkgr"}}, {"name": "kdl", "source": {"git": "https://github.com/Unoqwy/tree-sitter-kdl", "rev": "e1cd292c6d15df6610484e1d4b5c987ecad52373", "sha256": "13gj38j0lplnvf432smr50z84brfz2ld28qvqvhy6j6hd09b9xk3"}}, {"name": "xml", "source": {"git": "https://github.com/RenjiSann/tree-sitter-xml", "rev": "48a7c2b6fb9d515577e115e6788937e837815651", "sha256": "04jpcxmb9pwam5q6l6s5kvmkzfcnar8yvl3xm5i5rjnzfyvdgkzi"}}, {"name": "dtd", "source": {"git": "https://github.com/KMikeeU/tree-sitter-dtd", "rev": "6116becb02a6b8e9588ef73d300a9ba4622e156f", "sha256": "1gs1gkk20khmvz10ikhym9yqkcn5km5hq4hz4jyxdz67jzpbbbls"}}, {"name": "wit", "source": {"git": "https://github.com/hh9527/tree-sitter-wit", "rev": "c917790ab9aec50c5fd664cbfad8dd45110cfff3", "sha256": "08bpcmg2hdc8fyglhy311cx5i1brc798h8aicaxk52wgypv31rz7"}}, {"name": "ini", "source": {"git": "https://github.com/justinmk/tree-sitter-ini", "rev": "4d247fb876b4ae6b347687de4a179511bf67fcbc", "sha256": "08z3281q9vq3lr3mcj4cm6zh2bsg9jhyrxfqfann9ixklvzglkn6"}}, {"name": "bicep", "source": {"git": "https://github.com/the-mikedavis/tree-sitter-bicep", "rev": "d8e097fcfa143854861ef737161163a09cc2916b", "sha256": "1zm5i4723afmd95lg1xlrh0v2rdy116l87m4jcdfzzynls57zdhp"}}, {"name": "qmljs", "source": {"git": "https://github.com/yuja/tree-sitter-qmljs", "rev": "0b2b25bcaa7d4925d5f0dda16f6a99c588a437f1", "sha256": "0sgylcj8bfsiyjh11cfzpzywk66xi9clvbcihryk6qkpndz0pzqx"}}, {"name": "mermaid", "source": {"git": "https://github.com/monaqa/tree-sitter-mermaid", "rev": "d787c66276e7e95899230539f556e8b83ee16f6d", "sha256": "106w00y6l1fnjakaz9biqk546h2xy0yzr3wmg0yz6fihzj6kf117"}}, {"name": "matlab", "source": {"git": "https://github.com/mstanciu552/tree-sitter-matlab", "rev": "2d5d3d5193718a86477d4335aba5b34e79147326", "sha256": "1iab96dkf4zbcza4xpai76y7fy5kvgmv4ibjpa3ij588fcbvz5j6"}}, {"name": "ponylang", "source": {"git": "https://github.com/mfelsche/tree-sitter-ponylang", "rev": "ef66b151bc2604f431b5668fcec4747db4290e11", "sha256": "08g0a3kmv71rq86sizyikzsv5h2bdg8vcdiln7vrl482dczgxaky"}}, {"name": "dhall", "source": {"git": "https://github.com/jbellerb/tree-sitter-dhall", "rev": "affb6ee38d629c9296749767ab832d69bb0d9ea8", "sha256": "0r4f4w2jhm2hyvh3r3phdjhigsh0an8g4p21cbz8ldkld8ma9lxb"}}, {"name": "pem", "source": {"git": "https://github.com/mtoohey31/tree-sitter-pem", "rev": "be67a4330a1aa507c7297bc322204f936ec1132c", "sha256": "144gsh1cw3vzrgy95fvx7ld6gp0fq1v0mzmll0liiqgyrjsxda3h"}}, {"name": "passwd", "source": {"git": "https://github.com/ath3/tree-sitter-passwd", "rev": "20239395eacdc2e0923a7e5683ad3605aee7b716", "sha256": "03j18mx4g901q70kpy39hayh4snwis62svx6ir5015cvjz4fwiyx"}}, {"name": "hosts", "source": {"git": "https://github.com/ath3/tree-sitter-hosts", "rev": "301b9379ce7dfc8bdbe2c2699a6887dcb73953f9", "sha256": "0sgpybvwrvpw0lvk2s96ppyh8132g2vfjyif43yg08zlj06mvjbz"}}, {"name": "uxntal", "source": {"git": "https://github.com/Jummit/tree-sitter-uxntal", "rev": "9297e95ef74380b0ad84c4fd98f91e9f6e4319e6", "sha256": "1y6iws0z8likm8n1v6mi2jma5c7jvga04d9k30xqifpln8hm4qad"}}, {"name": "yuck", "source": {"git": "https://github.com/Philipp-M/tree-sitter-yuck", "rev": "e3d91a3c65decdea467adebe4127b8366fa47919", "sha256": "12zf5zqxh6farah2michxjhaxf97bal3x2pgrzfcp0wxz6fkns4z"}}, {"name": "prql", "source": {"git": "https://github.com/PRQL/tree-sitter-prql", "rev": "3f27cac466f030ee7d985d91eba5470e01dd21ea", "sha256": "0gp7z7ymqf15wagbik480hxm8p9xxlzkbnk7204742hdrl111zl6"}}, {"name": "po", "source": {"git": "https://github.com/erasin/tree-sitter-po", "rev": "417cee9abb2053ed26b19e7de972398f2da9b29e", "sha256": "1sm6hcyma29rw6shim4h27s0pmyby1yy4bjn9dcv9362xvanhacb"}}, {"name": "nasm", "source": {"git": "https://github.com/naclsn/tree-sitter-nasm", "rev": "a0db15db6fcfb1bf2cc8702500e55e558825c48b", "sha256": "1q4xcl0ypf0als770zpg0vv0pfxr2ysxl2vqxhc3m84s3id31sav"}}, {"name": "rst", "source": {"git": "https://github.com/stsewd/tree-sitter-rst", "rev": "25e6328872ac3a764ba8b926aea12719741103f1", "sha256": "0f53jmpjh2kcl9srwwwb7a5k24729ig96m87qjj99myqfnzahw43"}}, {"name": "capnp", "source": {"git": "https://github.com/amaanq/tree-sitter-capnp", "rev": "fc6e2addf103861b9b3dffb82c543eb6b71061aa", "sha256": "1gcz5v7i1imdsd7vxzj41iflsxx77zvvy9ngn95l8kg6rz8y3b0l"}}, {"name": "smithy", "source": {"git": "https://github.com/indoorvivants/tree-sitter-smithy", "rev": "cf8c7eb9faf7c7049839585eac19c94af231e6a0", "sha256": "0k7gfpa3pcj1ji34k0kwk1xbadkgjadfg36xfwns1fmlwzmr7jnx"}}, {"name": "vhdl", "source": {"git": "https://github.com/teburd/tree-sitter-vhdl", "rev": "c57313adee2231100db0a7880033f6865deeadb2", "sha256": "142flxd5yqg5aqx507wgqfkmgykjw5kwjq44s1g2gdgscjq4bm64"}}, {"name": "rego", "source": {"git": "https://github.com/FallenAngel97/tree-sitter-rego", "rev": "b2667c975f07b33be3ceb83bea5cfbad88095866", "sha256": "18qw5ahx6qcfq9gs6gcakl178gnnryksv6gyamyd6vypz20kwz6b"}}, {"name": "nim", "source": {"git": "https://github.com/aMOPel/tree-sitter-nim", "rev": "240239b232550e431d67de250d1b5856209e7f06", "sha256": "0gryfjqm2x9biqipzjqhasizm0zlg4b3lykcf2w8bv6wc0q0mbsh"}}, {"name": "hurl", "source": {"git": "https://github.com/pfeiferj/tree-sitter-hurl", "rev": "264c42064b61ee21abe88d0061f29a0523352e22", "sha256": "1figdv60w1a8nyfkqih1rsyzd9xq2dpcyv9l75ddja7k09p0rzsz"}}, {"name": "markdoc", "source": {"git": "https://github.com/markdoc-extra/tree-sitter-markdoc", "rev": "5ffe71b29e8a3f94823913ea9cea51fcfa7e3bf8", "sha256": "0xrrkxjbchbaj04z94l91d79jrrwx6zkafcbwig5851lfzsjbadc"}}, {"name": "opencl", "source": {"git": "https://github.com/lefp/tree-sitter-opencl", "rev": "8e1d24a57066b3cd1bb9685bbc1ca9de5c1b78fb", "sha256": "0pqfjd3sn1m8pqkj5hc3bf235jk8v7llh0xmw4470v8v2hw8ladp"}}, {"name": "just", "source": {"git": "https://github.com/IndianBoy42/tree-sitter-just", "rev": "8af0aab79854aaf25b620a52c39485849922f766", "sha256": "15hl3dsr5kxjl1kl9md2gb9bwj0ni54d9k6jv1h74b3psf4qb0l5"}}]
diff --git a/pkgs/applications/editors/helix/update.py b/pkgs/applications/editors/helix/update.py
new file mode 100755
index 0000000000000..196a393ae83cc
--- /dev/null
+++ b/pkgs/applications/editors/helix/update.py
@@ -0,0 +1,47 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i python3 -p nix-update python3 python3Packages.requests python3.pkgs.tomlkit nix-prefetch-git
+import tomlkit
+import json
+import requests
+import subprocess
+from pathlib import Path
+
+latest_release_url = "https://api.github.com/repos/helix-editor/helix/releases/latest"
+
+
+def get_latest_release():
+    res = requests.get(latest_release_url)
+    res.raise_for_status()
+    return res.json()["tag_name"]
+
+
+def get_grammar_config():
+    res = requests.get(f"https://raw.githubusercontent.com/helix-editor/helix/{version}/languages.toml")
+    res.raise_for_status()
+    return tomlkit.parse(res.text)["grammar"]
+
+
+def calculate_sha256(url, rev):
+    out = subprocess.check_output([
+        "nix-prefetch-git", "--quiet",
+        "--url", url,
+        "--rev", rev])
+    return json.loads(out)["sha256"]
+
+
+version = get_latest_release()
+grammars = get_grammar_config()
+for grammar in grammars:
+    if grammar["source"].get("git") is not None:
+        grammar["source"]["sha256"] = calculate_sha256(
+            grammar["source"]["git"], grammar["source"]["rev"])
+
+json_grammars = json.dumps(grammars)
+
+with open(Path(__file__).parent / "language-grammars.json", "w") as file:
+    file.write(json_grammars + "\n")
+
+subprocess.run([
+    "nix-update", "helix",
+    "--version", version,
+])