on aa00a47 help sign in
helix/languages.toml
1783 lines 48 kB history raw
1# Language support configuration.
2# See the languages documentation: https://docs.helix-editor.com/master/languages.html
4[[language]]
5name = "rust"
6scope = "source.rust"
7injection-regex = "rust"
8file-types = ["rs"]
9roots = ["Cargo.toml", "Cargo.lock"]
10auto-format = true
11comment-token = "//"
12language-server = { command = "rust-analyzer" }
13indent = { tab-width = 4, unit = " " }
15[language.auto-pairs]
16'(' = ')'
17'{' = '}'
18'[' = ']'
19'"' = '"'
20'`' = '`'
22[language.debugger]
23name = "lldb-vscode"
24transport = "stdio"
25command = "lldb-vscode"
27[[language.debugger.templates]]
28name = "binary"
29request = "launch"
30completion = [ { name = "binary", completion = "filename" } ]
31args = { program = "{0}" }
33[[language.debugger.templates]]
34name = "binary (terminal)"
35request = "launch"
36completion = [ { name = "binary", completion = "filename" } ]
37args = { program = "{0}", runInTerminal = true }
39[[language.debugger.templates]]
40name = "attach"
41request = "attach"
42completion = [ "pid" ]
43args = { pid = "{0}" }
45[[language.debugger.templates]]
46name = "gdbserver attach"
47request = "attach"
48completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
49args = { attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
51[[grammar]]
52name = "rust"
53source = { git = "https://github.com/tree-sitter/tree-sitter-rust", rev = "41e23b454f503e6fe63ec4b6d9f7f2cf7788ab8e" }
55[[language]]
56name = "toml"
57scope = "source.toml"
58injection-regex = "toml"
59file-types = ["toml"]
60roots = []
61comment-token = "#"
62language-server = { command = "taplo", args = ["lsp", "stdio"] }
63indent = { tab-width = 2, unit = " " }
65[[grammar]]
66name = "toml"
67source = { git = "https://github.com/ikatyang/tree-sitter-toml", rev = "7cff70bbcbbc62001b465603ca1ea88edd668704" }
69[[language]]
70name = "awk"
71scope = "source.awk"
72injection-regex = "awk"
73file-types = ["awk", "gawk", "nawk", "mawk"]
74roots = []
75comment-token = "#"
76language-server = { command = "awk-language-server" }
77indent = { tab-width = 2, unit = " " }
79[[grammar]]
80name = "awk"
81source = { git = "https://github.com/Beaglefoot/tree-sitter-awk", rev = "a799bc5da7c2a84bc9a06ba5f3540cf1191e4ee3" }
83[[language]]
84name = "protobuf"
85scope = "source.proto"
86injection-regex = "protobuf"
87file-types = ["proto"]
88roots = []
89comment-token = "//"
90indent = { tab-width = 2, unit = " " }
92[[grammar]]
93name = "protobuf"
94source = { git = "https://github.com/yusdacra/tree-sitter-protobuf", rev = "19c211a01434d9f03efff99f85e19f967591b175"}
96[[language]]
97name = "elixir"
98scope = "source.elixir"
99injection-regex = "(elixir|ex)"
100file-types = ["ex", "exs", "mix.lock"]
101shebangs = ["elixir"]
102roots = []
103comment-token = "#"
104language-server = { command = "elixir-ls" }
105config = { elixirLS.dialyzerEnabled = false }
106indent = { tab-width = 2, unit = " " }
108[[grammar]]
109name = "elixir"
110source = { git = "https://github.com/elixir-lang/tree-sitter-elixir", rev = "1dabc1c790e07115175057863808085ea60dd08a" }
112[[language]]
113name = "fish"
114scope = "source.fish"
115injection-regex = "fish"
116file-types = ["fish"]
117shebangs = ["fish"]
118roots = []
119comment-token = "#"
120indent = { tab-width = 4, unit = " " }
122[[grammar]]
123name = "fish"
124source = { git = "https://github.com/ram02z/tree-sitter-fish", rev = "84436cf24c2b3176bfbb220922a0fdbd0141e406" }
126[[language]]
127name = "mint"
128scope = "source.mint"
129injection-regex = "mint"
130file-types = ["mint"]
131shebangs = []
132roots = []
133comment-token = "//"
134language-server = { command = "mint", args = ["ls"] }
135indent = { tab-width = 2, unit = " " }
137[[language]]
138name = "json"
139scope = "source.json"
140injection-regex = "json"
141file-types = ["json"]
142roots = []
143language-server = { command = "vscode-json-language-server", args = ["--stdio"] }
144auto-format = true
145config = { "provideFormatter" = true }
146indent = { tab-width = 2, unit = " " }
148[[grammar]]
149name = "json"
150source = { git = "https://github.com/tree-sitter/tree-sitter-json", rev = "65bceef69c3b0f24c0b19ce67d79f57c96e90fcb" }
152[[language]]
153name = "c"
154scope = "source.c"
155injection-regex = "c"
156file-types = ["c"] # TODO: ["h"]
157roots = []
158comment-token = "//"
159language-server = { command = "clangd" }
160indent = { tab-width = 2, unit = " " }
162[language.debugger]
163name = "lldb-vscode"
164transport = "stdio"
165command = "lldb-vscode"
167[[language.debugger.templates]]
168name = "binary"
169request = "launch"
170completion = [ { name = "binary", completion = "filename" } ]
171args = { console = "internalConsole", program = "{0}" }
173[[language.debugger.templates]]
174name = "attach"
175request = "attach"
176completion = [ "pid" ]
177args = { console = "internalConsole", pid = "{0}" }
179[[language.debugger.templates]]
180name = "gdbserver attach"
181request = "attach"
182completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
183args = { console = "internalConsole", attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
185[[grammar]]
186name = "c"
187source = { git = "https://github.com/tree-sitter/tree-sitter-c", rev = "f05e279aedde06a25801c3f2b2cc8ac17fac52ae" }
189[[language]]
190name = "cpp"
191scope = "source.cpp"
192injection-regex = "cpp"
193file-types = ["cc", "hh", "cpp", "hpp", "h", "ipp", "tpp", "cxx", "hxx", "ixx", "txx", "ino"]
194roots = []
195comment-token = "//"
196language-server = { command = "clangd" }
197indent = { tab-width = 2, unit = " " }
199[language.debugger]
200name = "lldb-vscode"
201transport = "stdio"
202command = "lldb-vscode"
204[[language.debugger.templates]]
205name = "binary"
206request = "launch"
207completion = [ { name = "binary", completion = "filename" } ]
208args = { console = "internalConsole", program = "{0}" }
210[[language.debugger.templates]]
211name = "attach"
212request = "attach"
213completion = [ "pid" ]
214args = { console = "internalConsole", pid = "{0}" }
216[[language.debugger.templates]]
217name = "gdbserver attach"
218request = "attach"
219completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
220args = { console = "internalConsole", attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
222[[grammar]]
223name = "cpp"
224source = { git = "https://github.com/tree-sitter/tree-sitter-cpp", rev = "e8dcc9d2b404c542fd236ea5f7208f90be8a6e89" }
226[[language]]
227name = "c-sharp"
228scope = "source.csharp"
229injection-regex = "c-?sharp"
230file-types = ["cs"]
231roots = ["sln", "csproj"]
232comment-token = "//"
233indent = { tab-width = 4, unit = "\t" }
234language-server = { command = "OmniSharp", args = [ "--languageserver" ] }
236[[grammar]]
237name = "c-sharp"
238source = { git = "https://github.com/tree-sitter/tree-sitter-c-sharp", rev = "9c494a503c8e2044bfffce57f70b480c01a82f03" }
240[[language]]
241name = "go"
242scope = "source.go"
243injection-regex = "go"
244file-types = ["go"]
245roots = ["Gopkg.toml", "go.mod"]
246auto-format = true
247comment-token = "//"
248language-server = { command = "gopls" }
249# TODO: gopls needs utf-8 offsets?
250indent = { tab-width = 4, unit = "\t" }
252[language.debugger]
253name = "go"
254transport = "tcp"
255command = "dlv"
256args = ["dap"]
257port-arg = "-l 127.0.0.1:{}"
259[[language.debugger.templates]]
260name = "source"
261request = "launch"
262completion = [ { name = "entrypoint", completion = "filename", default = "." } ]
263args = { mode = "debug", program = "{0}" }
265[[language.debugger.templates]]
266name = "binary"
267request = "launch"
268completion = [ { name = "binary", completion = "filename" } ]
269args = { mode = "exec", program = "{0}" }
271[[language.debugger.templates]]
272name = "test"
273request = "launch"
274completion = [ { name = "tests", completion = "directory", default = "." } ]
275args = { mode = "test", program = "{0}" }
277[[language.debugger.templates]]
278name = "attach"
279request = "attach"
280completion = [ "pid" ]
281args = { mode = "local", processId = "{0}" }
283[[grammar]]
284name = "go"
285source = { git = "https://github.com/tree-sitter/tree-sitter-go", rev = "0fa917a7022d1cd2e9b779a6a8fc5dc7fad69c75" }
287[[language]]
288name = "gomod"
289scope = "source.gomod"
290injection-regex = "gomod"
291file-types = ["go.mod"]
292roots = []
293auto-format = true
294comment-token = "//"
295language-server = { command = "gopls" }
296indent = { tab-width = 4, unit = "\t" }
298[[grammar]]
299name = "gomod"
300source = { git = "https://github.com/camdencheek/tree-sitter-go-mod", rev = "e8f51f8e4363a3d9a427e8f63f4c1bbc5ef5d8d0" }
302[[language]]
303name = "gotmpl"
304scope = "source.gotmpl"
305injection-regex = "gotmpl"
306file-types = ["gotmpl"]
307roots = []
308comment-token = "//"
309language-server = { command = "gopls" }
310indent = { tab-width = 2, unit = " " }
312[[grammar]]
313name = "gotmpl"
314source = { git = "https://github.com/dannylongeuay/tree-sitter-go-template", rev = "395a33e08e69f4155156f0b90138a6c86764c979" }
316[[language]]
317name = "gowork"
318scope = "source.gowork"
319injection-regex = "gowork"
320file-types = ["go.work"]
321roots = []
322auto-format = true
323comment-token = "//"
324language-server = { command = "gopls" }
325indent = { tab-width = 4, unit = "\t" }
327[[grammar]]
328name = "gowork"
329source = { git = "https://github.com/omertuc/tree-sitter-go-work", rev = "6dd9dd79fb51e9f2abc829d5e97b15015b6a8ae2" }
331[[language]]
332name = "javascript"
333scope = "source.js"
334injection-regex = "(js|javascript)"
335file-types = ["js", "mjs", "cjs"]
336shebangs = ["node"]
337roots = []
338comment-token = "//"
339# TODO: highlights-params
340language-server = { command = "typescript-language-server", args = ["--stdio"], language-id = "javascript" }
341indent = { tab-width = 2, unit = " " }
343[language.debugger]
344name = "node-debug2"
345transport = "stdio"
346# args consisting of cmd (node) and path to adapter should be added to user's configuration
347quirks = { absolute-paths = true }
349[[language.debugger.templates]]
350name = "source"
351request = "launch"
352completion = [ { name = "main", completion = "filename", default = "index.js" } ]
353args = { program = "{0}" }
355[[grammar]]
356name = "javascript"
357source = { git = "https://github.com/tree-sitter/tree-sitter-javascript", rev = "4a95461c4761c624f2263725aca79eeaefd36cad" }
359[[language]]
360name = "jsx"
361scope = "source.jsx"
362injection-regex = "jsx"
363file-types = ["jsx"]
364roots = []
365comment-token = "//"
366language-server = { command = "typescript-language-server", args = ["--stdio"], language-id = "javascriptreact" }
367indent = { tab-width = 2, unit = " " }
368grammar = "javascript"
370[[language]]
371name = "typescript"
372scope = "source.ts"
373injection-regex = "(ts|typescript)"
374file-types = ["ts"]
375shebangs = []
376roots = []
377# TODO: highlights-params
378language-server = { command = "typescript-language-server", args = ["--stdio"], language-id = "typescript"}
379indent = { tab-width = 2, unit = " " }
381[[grammar]]
382name = "typescript"
383source = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "3e897ea5925f037cfae2e551f8e6b12eec2a201a", subpath = "typescript" }
385[[language]]
386name = "tsx"
387scope = "source.tsx"
388injection-regex = "(tsx)" # |typescript
389file-types = ["tsx"]
390roots = []
391# TODO: highlights-params
392language-server = { command = "typescript-language-server", args = ["--stdio"], language-id = "typescriptreact" }
393indent = { tab-width = 2, unit = " " }
395[[grammar]]
396name = "tsx"
397source = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "3e897ea5925f037cfae2e551f8e6b12eec2a201a", subpath = "tsx" }
399[[language]]
400name = "css"
401scope = "source.css"
402injection-regex = "css"
403file-types = ["css", "scss"]
404roots = []
405language-server = { command = "vscode-css-language-server", args = ["--stdio"] }
406indent = { tab-width = 2, unit = " " }
408[[grammar]]
409name = "css"
410source = { git = "https://github.com/tree-sitter/tree-sitter-css", rev = "94e10230939e702b4fa3fa2cb5c3bc7173b95d07" }
412[[language]]
413name = "scss"
414scope = "source.scss"
415injection-regex = "scss"
416file-types = ["scss"]
417roots = []
418language-server = { command = "vscode-css-language-server", args = ["--stdio"] }
419indent = { tab-width = 2, unit = " " }
421[[grammar]]
422name = "scss"
423source = { git = "https://github.com/serenadeai/tree-sitter-scss", rev = "c478c6868648eff49eb04a4df90d703dc45b312a" }
425[[language]]
426name = "html"
427scope = "text.html.basic"
428injection-regex = "html"
429file-types = ["html"]
430roots = []
431language-server = { command = "vscode-html-language-server", args = ["--stdio"] }
432auto-format = true
433config = { "provideFormatter" = true }
434indent = { tab-width = 2, unit = " " }
436[[grammar]]
437name = "html"
438source = { git = "https://github.com/tree-sitter/tree-sitter-html", rev = "d93af487cc75120c89257195e6be46c999c6ba18" }
440[[language]]
441name = "python"
442scope = "source.python"
443injection-regex = "python"
444file-types = ["py"]
445shebangs = ["python"]
446roots = []
447comment-token = "#"
448language-server = { command = "pylsp" }
449# TODO: pyls needs utf-8 offsets
450indent = { tab-width = 4, unit = " " }
452[[grammar]]
453name = "python"
454source = { git = "https://github.com/tree-sitter/tree-sitter-python", rev = "de221eccf9a221f5b85474a553474a69b4b5784d" }
456[[language]]
457name = "nickel"
458scope = "source.nickel"
459injection-regex = "nickel"
460file-types = ["ncl"]
461shebangs = []
462roots = []
463comment-token = "#"
464language-server = { command = "nls" }
465indent = { tab-width = 2, unit = " " }
467[[grammar]]
468name = "nickel"
469source = { git = "https://github.com/nickel-lang/tree-sitter-nickel", rev = "9d83db400b6c11260b9106f131f93ddda8131933" }
471[[language]]
472name = "nix"
473scope = "source.nix"
474injection-regex = "nix"
475file-types = ["nix"]
476shebangs = []
477roots = []
478comment-token = "#"
479language-server = { command = "rnix-lsp" }
480indent = { tab-width = 2, unit = " " }
482[[grammar]]
483name = "nix"
484source = { git = "https://github.com/cstrahan/tree-sitter-nix", rev = "6b71a810c0acd49b980c50fc79092561f7cee307" }
486[[language]]
487name = "ruby"
488scope = "source.ruby"
489injection-regex = "ruby"
490file-types = ["rb", "rake", "rakefile", "irb", "gemfile", "gemspec", "Rakefile", "Gemfile", "rabl", "jbuilder", "jb"]
491shebangs = ["ruby"]
492roots = []
493comment-token = "#"
494language-server = { command = "solargraph", args = ["stdio"] }
495indent = { tab-width = 2, unit = " " }
497[[grammar]]
498name = "ruby"
499source = { git = "https://github.com/tree-sitter/tree-sitter-ruby", rev = "4c600a463d97e36a0ca5ac57e11f3ac8c297a0fa" }
501[[language]]
502name = "bash"
503scope = "source.bash"
504injection-regex = "(shell|bash|zsh|sh)"
505file-types = ["sh", "bash", "zsh", ".bash_login", ".bash_logout", ".bash_profile", ".bashrc", ".profile", ".zshenv", ".zlogin", ".zlogout", ".zprofile", ".zshrc", "APKBUILD", "PKGBUILD", "eclass", "ebuild", "bazelrc"]
506shebangs = ["sh", "bash", "dash"]
507roots = []
508comment-token = "#"
509language-server = { command = "bash-language-server", args = ["start"] }
510indent = { tab-width = 2, unit = " " }
512[[grammar]]
513name = "bash"
514source = { git = "https://github.com/tree-sitter/tree-sitter-bash", rev = "275effdfc0edce774acf7d481f9ea195c6c403cd" }
516[[language]]
517name = "php"
518scope = "source.php"
519injection-regex = "php"
520file-types = ["php", "inc"]
521shebangs = ["php"]
522roots = ["composer.json", "index.php"]
523language-server = { command = "intelephense", args = ["--stdio"] }
524indent = { tab-width = 4, unit = " " }
526[[grammar]]
527name = "php"
528source = { git = "https://github.com/tree-sitter/tree-sitter-php", rev = "57f855461aeeca73bd4218754fb26b5ac143f98f" }
530[[language]]
531name = "twig"
532scope = "source.twig"
533injection-regex = "twig"
534file-types = ["twig"]
535roots = []
536indent = { tab-width = 2, unit = " " }
538[[grammar]]
539name = "twig"
540source = { git = "https://github.com/eirabben/tree-sitter-twig", rev = "b7444181fb38e603e25ea8fcdac55f9492e49c27" }
542[[language]]
543name = "latex"
544scope = "source.tex"
545injection-regex = "tex"
546file-types = ["tex"]
547roots = []
548comment-token = "%"
549language-server = { command = "texlab" }
550indent = { tab-width = 4, unit = "\t" }
552[[grammar]]
553name = "latex"
554source = { git = "https://github.com/latex-lsp/tree-sitter-latex", rev = "b3b2cf27f33e71438ebe46934900b1153901c6f2" }
556[[language]]
557name = "lean"
558scope = "source.lean"
559injection-regex = "lean"
560file-types = ["lean"]
561roots = [ "lakefile.lean" ]
562comment-token = "--"
563language-server = { command = "lean", args = [ "--server" ] }
564indent = { tab-width = 2, unit = " " }
566[[grammar]]
567name = "lean"
568source = { git = "https://github.com/Julian/tree-sitter-lean", rev = "d98426109258b266e1e92358c5f11716d2e8f638" }
570[[language]]
571name = "julia"
572scope = "source.julia"
573injection-regex = "julia"
574file-types = ["jl"]
575roots = []
576comment-token = "#"
577language-server = { command = "julia", args = [
578 "--startup-file=no",
579 "--history-file=no",
580 "--quiet",
581 "-e",
582 "using LanguageServer; runserver()",
583 ] }
584indent = { tab-width = 4, unit = " " }
586[[grammar]]
587name = "julia"
588source = { git = "https://github.com/tree-sitter/tree-sitter-julia", rev = "fc60b7cce87da7a1b7f8cb0f9371c3dc8b684500" }
590[[language]]
591name = "java"
592scope = "source.java"
593injection-regex = "java"
594file-types = ["java"]
595roots = ["pom.xml"]
596language-server = { command = "jdtls" }
597indent = { tab-width = 4, unit = " " }
599[[grammar]]
600name = "java"
601source = { git = "https://github.com/tree-sitter/tree-sitter-java", rev = "bd6186c24d5eb13b4623efac9d944dcc095c0dad" }
603[[language]]
604name = "ledger"
605scope = "source.ledger"
606injection-regex = "ledger"
607file-types = ["ldg", "ledger", "journal"]
608roots = []
609comment-token = ";"
610indent = { tab-width = 4, unit = " " }
612[[grammar]]
613name = "ledger"
614source = { git = "https://github.com/cbarrete/tree-sitter-ledger", rev = "1f864fb2bf6a87fe1b48545cc6adc6d23090adf7" }
616[[language]]
617name = "beancount"
618scope = "source.beancount"
619injection-regex = "beancount"
620file-types = ["beancount", "bean"]
621roots = []
622comment-token = ";"
623indent = { tab-width = 2, unit = " " }
625[[grammar]]
626name = "beancount"
627source = { git = "https://github.com/polarmutex/tree-sitter-beancount", rev = "4cbd1f09cd07c1f1fabf867c2cf354f9da53cc4c" }
629[[language]]
630name = "ocaml"
631scope = "source.ocaml"
632injection-regex = "ocaml"
633file-types = ["ml"]
634shebangs = []
635roots = []
636comment-token = "(**)"
637language-server = { command = "ocamllsp" }
638indent = { tab-width = 2, unit = " " }
640[[grammar]]
641name = "ocaml"
642source = { git = "https://github.com/tree-sitter/tree-sitter-ocaml", rev = "23d419ba45789c5a47d31448061557716b02750a", subpath = "ocaml" }
644[[language]]
645name = "ocaml-interface"
646scope = "source.ocaml.interface"
647file-types = ["mli"]
648shebangs = []
649roots = []
650comment-token = "(**)"
651language-server = { command = "ocamllsp" }
652indent = { tab-width = 2, unit = " " }
654[[grammar]]
655name = "ocaml-interface"
656source = { git = "https://github.com/tree-sitter/tree-sitter-ocaml", rev = "23d419ba45789c5a47d31448061557716b02750a", subpath = "interface" }
658[[language]]
659name = "lua"
660scope = "source.lua"
661file-types = ["lua"]
662shebangs = ["lua"]
663roots = [".luarc.json", ".luacheckrc", ".stylua.toml", "selene.toml", ".git"]
664comment-token = "--"
665indent = { tab-width = 2, unit = " " }
666language-server = { command = "lua-language-server", args = [] }
668[[grammar]]
669name = "lua"
670source = { git = "https://github.com/nvim-treesitter/tree-sitter-lua", rev = "6f5d40190ec8a0aa8c8410699353d820f4f7d7a6" }
672[[language]]
673name = "svelte"
674scope = "source.svelte"
675injection-regex = "svelte"
676file-types = ["svelte"]
677roots = []
678indent = { tab-width = 2, unit = " " }
679language-server = { command = "svelteserver", args = ["--stdio"] }
681[[grammar]]
682name = "svelte"
683source = { git = "https://github.com/Himujjal/tree-sitter-svelte", rev = "349a5984513b4a4a9e143a6e746120c6ff6cf6ed" }
685[[language]]
686name = "vue"
687scope = "source.vue"
688injection-regex = "vue"
689file-types = ["vue"]
690roots = ["package.json", "vue.config.js"]
691indent = { tab-width = 2, unit = " " }
692language-server = { command = "vls" }
694[[grammar]]
695name = "vue"
696source = { git = "https://github.com/ikatyang/tree-sitter-vue", rev = "91fe2754796cd8fba5f229505a23fa08f3546c06" }
698[[language]]
699name = "yaml"
700scope = "source.yaml"
701file-types = ["yml", "yaml"]
702roots = []
703comment-token = "#"
704indent = { tab-width = 2, unit = " " }
705language-server = { command = "yaml-language-server", args = ["--stdio"] }
706injection-regex = "yml|yaml"
708[[grammar]]
709name = "yaml"
710source = { git = "https://github.com/ikatyang/tree-sitter-yaml", rev = "0e36bed171768908f331ff7dff9d956bae016efb" }
712[[language]]
713name = "haskell"
714scope = "source.haskell"
715injection-regex = "haskell"
716file-types = ["hs"]
717roots = ["Setup.hs", "stack.yaml", "*.cabal"]
718comment-token = "--"
719language-server = { command = "haskell-language-server-wrapper", args = ["--lsp"] }
720indent = { tab-width = 2, unit = " " }
722[[grammar]]
723name = "haskell"
724source = { git = "https://github.com/tree-sitter/tree-sitter-haskell", rev = "b6ec26f181dd059eedd506fa5fbeae1b8e5556c8" }
726[[language]]
727name = "zig"
728scope = "source.zig"
729injection-regex = "zig"
730file-types = ["zig"]
731roots = ["build.zig"]
732auto-format = true
733comment-token = "//"
734language-server = { command = "zls" }
735indent = { tab-width = 4, unit = " " }
736formatter = { command = "zig" , args = ["fmt", "--stdin"] }
738[[grammar]]
739name = "zig"
740source = { git = "https://github.com/maxxnino/tree-sitter-zig", rev = "8d3224c3bd0890fe08358886ebf54fca2ed448a6" }
742[[language]]
743name = "prolog"
744scope = "source.prolog"
745roots = []
746file-types = ["pl", "prolog"]
747shebangs = ["swipl"]
748comment-token = "%"
749language-server = { command = "swipl", args = [
750 "-g", "use_module(library(lsp_server))",
751 "-g", "lsp_server:main",
752 "-t", "halt", "--", "stdio"] }
754[[language]]
755name = "tsq"
756scope = "source.tsq"
757file-types = ["scm"]
758roots = []
759comment-token = ";"
760injection-regex = "tsq"
761indent = { tab-width = 2, unit = " " }
763[[grammar]]
764name = "tsq"
765source = { git = "https://github.com/the-mikedavis/tree-sitter-tsq", rev = "48b5e9f82ae0a4727201626f33a17f69f8e0ff86" }
767[[language]]
768name = "cmake"
769scope = "source.cmake"
770file-types = ["cmake", "CMakeLists.txt"]
771roots = []
772comment-token = "#"
773indent = { tab-width = 2, unit = " " }
774language-server = { command = "cmake-language-server" }
775injection-regex = "cmake"
777[[grammar]]
778name = "cmake"
779source = { git = "https://github.com/uyha/tree-sitter-cmake", rev = "f6616f1e417ee8b62daf251aa1daa5d73781c596" }
781[[language]]
782name = "make"
783scope = "source.make"
784file-types = ["Makefile", "makefile", "mk", "justfile", ".justfile"]
785injection-regex = "(make|makefile|Makefile|mk|just)"
786roots = []
787comment-token = "#"
788indent = { tab-width = 4, unit = "\t" }
790[[grammar]]
791name = "make"
792source = { git = "https://github.com/alemuller/tree-sitter-make", rev = "a4b9187417d6be349ee5fd4b6e77b4172c6827dd" }
794[[language]]
795name = "glsl"
796scope = "source.glsl"
797file-types = ["glsl", "vert", "tesc", "tese", "geom", "frag", "comp" ]
798roots = []
799comment-token = "//"
800indent = { tab-width = 4, unit = " " }
801injection-regex = "glsl"
803[[grammar]]
804name = "glsl"
805source = { git = "https://github.com/theHamsta/tree-sitter-glsl", rev = "88408ffc5e27abcffced7010fc77396ae3636d7e" }
807[[language]]
808name = "perl"
809scope = "source.perl"
810file-types = ["pl", "pm", "t"]
811shebangs = ["perl"]
812roots = []
813comment-token = "#"
814indent = { tab-width = 2, unit = " " }
816[[grammar]]
817name = "perl"
818source = { git = "https://github.com/ganezdragon/tree-sitter-perl", rev = "0ac2c6da562c7a2c26ed7e8691d4a590f7e8b90a" }
820[[language]]
821name = "racket"
822scope = "source.rkt"
823roots = []
824file-types = ["rkt"]
825shebangs = ["racket"]
826comment-token = ";"
827language-server = { command = "racket", args = ["-l", "racket-langserver"] }
829[[language]]
830name = "comment"
831scope = "scope.comment"
832roots = []
833file-types = []
834injection-regex = "comment"
836[[grammar]]
837name = "comment"
838source = { git = "https://github.com/stsewd/tree-sitter-comment", rev = "5dd3c62f1bbe378b220fe16b317b85247898639e" }
840[[language]]
841name = "wgsl"
842scope = "source.wgsl"
843file-types = ["wgsl"]
844roots = []
845comment-token = "//"
846language-server = { command = "wgsl_analyzer" }
847indent = { tab-width = 4, unit = " " }
849[[grammar]]
850name = "wgsl"
851source = { git = "https://github.com/szebniok/tree-sitter-wgsl", rev = "f00ff52251edbd58f4d39c9c3204383253032c11" }
853[[language]]
854name = "llvm"
855scope = "source.llvm"
856roots = []
857file-types = ["ll"]
858comment-token = ";"
859indent = { tab-width = 2, unit = " " }
860injection-regex = "llvm"
862[[grammar]]
863name = "llvm"
864source = { git = "https://github.com/benwilliamgraham/tree-sitter-llvm", rev = "3b213925b9c4f42c1acfe2e10bfbb438d9c6834d" }
866[[language]]
867name = "llvm-mir"
868scope = "source.llvm_mir"
869roots = []
870file-types = []
871comment-token = ";"
872indent = { tab-width = 2, unit = " " }
873injection-regex = "mir"
875[[grammar]]
876name = "llvm-mir"
877source = { git = "https://github.com/Flakebi/tree-sitter-llvm-mir", rev = "06fabca19454b2dc00c1b211a7cb7ad0bc2585f1" }
879[[language]]
880name = "llvm-mir-yaml"
881# TODO allow languages to point to their grammar like so:
883# grammar = "yaml"
884scope = "source.yaml"
885roots = []
886file-types = ["mir"]
887comment-token = "#"
888indent = { tab-width = 2, unit = " " }
890[[language]]
891name = "tablegen"
892scope = "source.tablegen"
893roots = []
894file-types = ["td"]
895comment-token = "//"
896indent = { tab-width = 2, unit = " " }
897injection-regex = "tablegen"
899[[grammar]]
900name = "tablegen"
901source = { git = "https://github.com/Flakebi/tree-sitter-tablegen", rev = "568dd8a937347175fd58db83d4c4cdaeb6069bd2" }
903[[language]]
904name = "markdown"
905scope = "source.md"
906injection-regex = "md|markdown"
907file-types = ["md", "markdown"]
908roots = [".marksman.toml"]
909language-server = { command = "marksman", args=["server"] }
910indent = { tab-width = 2, unit = " " }
912[[grammar]]
913name = "markdown"
914source = { git = "https://github.com/MDeiml/tree-sitter-markdown", rev = "142a5b4a1b092b64c9f5db8f11558f9dd4009a1b", subpath = "tree-sitter-markdown" }
916[[language]]
917name = "markdown.inline"
918scope = "source.markdown.inline"
919injection-regex = "markdown\\.inline"
920file-types = []
921roots = []
922grammar = "markdown_inline"
924[[grammar]]
925name = "markdown_inline"
926source = { git = "https://github.com/MDeiml/tree-sitter-markdown", rev = "142a5b4a1b092b64c9f5db8f11558f9dd4009a1b", subpath = "tree-sitter-markdown-inline" }
928[[language]]
929name = "dart"
930scope = "source.dart"
931file-types = ["dart"]
932roots = ["pubspec.yaml"]
933auto-format = true
934comment-token = "//"
935language-server = { command = "dart", args = ["language-server", "--client-id=helix"] }
936indent = { tab-width = 2, unit = " " }
938[[grammar]]
939name = "dart"
940source = { git = "https://github.com/UserNobody14/tree-sitter-dart", rev = "2d7f66651c9319c1a0e4dda226cc2628fbb66528" }
942[[language]]
943name = "scala"
944scope = "source.scala"
945roots = ["build.sbt", "pom.xml"]
946file-types = ["scala", "sbt"]
947comment-token = "//"
948indent = { tab-width = 2, unit = " " }
949language-server = { command = "metals" }
951[[grammar]]
952name = "scala"
953source = { git = "https://github.com/tree-sitter/tree-sitter-scala", rev = "0a3dd53a7fc4b352a538397d054380aaa28be54c" }
955[[language]]
956name = "dockerfile"
957scope = "source.dockerfile"
958injection-regex = "docker|dockerfile"
959roots = ["Dockerfile"]
960file-types = ["Dockerfile", "dockerfile"]
961comment-token = "#"
962indent = { tab-width = 2, unit = " " }
963language-server = { command = "docker-langserver", args = ["--stdio"] }
965[[grammar]]
966name = "dockerfile"
967source = { git = "https://github.com/camdencheek/tree-sitter-dockerfile", rev = "7af32bc04a66ab196f5b9f92ac471f29372ae2ce" }
969[[language]]
970name = "git-commit"
971scope = "git.commitmsg"
972roots = []
973file-types = ["COMMIT_EDITMSG"]
974comment-token = "#"
975indent = { tab-width = 2, unit = " " }
976rulers = [50, 72]
977max-line-length = 72
979[[grammar]]
980name = "git-commit"
981source = { git = "https://github.com/the-mikedavis/tree-sitter-git-commit", rev = "318dd72abfaa7b8044c1d1fbeabcd06deaaf038f" }
983[[language]]
984name = "diff"
985scope = "source.diff"
986roots = []
987file-types = ["diff"]
988injection-regex = "diff"
989comment-token = "#"
990indent = { tab-width = 2, unit = " " }
992[[grammar]]
993name = "diff"
994source = { git = "https://github.com/the-mikedavis/tree-sitter-diff", rev = "fd74c78fa88a20085dbc7bbeaba066f4d1692b63" }
996[[language]]
997name = "git-rebase"
998scope = "source.gitrebase"
999roots = []
1000file-types = ["git-rebase-todo"]
1001injection-regex = "git-rebase"
1002comment-token = "#"
1003indent = { tab-width = 2, unit = " " }
1005[[grammar]]
1006name = "git-rebase"
1007source = { git = "https://github.com/the-mikedavis/tree-sitter-git-rebase", rev = "332dc528f27044bc4427024dbb33e6941fc131f2" }
1009[[language]]
1010name = "regex"
1011scope = "source.regex"
1012injection-regex = "regex"
1013file-types = ["regex"]
1014roots = []
1016[[grammar]]
1017name = "regex"
1018source = { git = "https://github.com/tree-sitter/tree-sitter-regex", rev = "e1cfca3c79896ff79842f057ea13e529b66af636" }
1020[[language]]
1021name = "git-config"
1022scope = "source.gitconfig"
1023roots = []
1024# TODO: allow specifying file-types as a regex so we can read directory names (e.g. `.git/config`)
1025file-types = [".gitmodules", ".gitconfig"]
1026injection-regex = "git-config"
1027comment-token = "#"
1028indent = { tab-width = 4, unit = "\t" }
1030[[grammar]]
1031name = "git-config"
1032source = { git = "https://github.com/the-mikedavis/tree-sitter-git-config", rev = "0e4f0baf90b57e5aeb62dcdbf03062c6315d43ea" }
1034[[language]]
1035name = "git-attributes"
1036scope = "source.gitattributes"
1037roots = []
1038file-types = [".gitattributes"]
1039injection-regex = "git-attributes"
1040comment-token = "#"
1041grammar = "gitattributes"
1043[[grammar]]
1044name = "gitattributes"
1045source = { git = "https://github.com/mtoohey31/tree-sitter-gitattributes", rev = "3dd50808e3096f93dccd5e9dc7dc3dba2eb12dc4" }
1047[[language]]
1048name = "git-ignore"
1049scope = "source.gitignore"
1050roots = []
1051file-types = [".gitignore", ".gitignore_global"]
1052injection-regex = "git-ignore"
1053comment-token = "#"
1054grammar = "gitignore"
1056[[grammar]]
1057name = "gitignore"
1058source = { git = "https://github.com/shunsambongi/tree-sitter-gitignore", rev = "f4685bf11ac466dd278449bcfe5fd014e94aa504" }
1060[[language]]
1061name = "graphql"
1062scope = "source.graphql"
1063injection-regex = "graphql"
1064file-types = ["gql", "graphql"]
1065roots = []
1066indent = { tab-width = 2, unit = " " }
1068[[grammar]]
1069name = "graphql"
1070source = { git = "https://github.com/bkegley/tree-sitter-graphql", rev = "5e66e961eee421786bdda8495ed1db045e06b5fe" }
1072[[language]]
1073name = "elm"
1074scope = "source.elm"
1075injection-regex = "elm"
1076file-types = ["elm"]
1077roots = ["elm.json"]
1078auto-format = true
1079comment-token = "--"
1080language-server = { command = "elm-language-server" }
1081indent = { tab-width = 4, unit = " " }
1083[[grammar]]
1084name = "elm"
1085source = { git = "https://github.com/elm-tooling/tree-sitter-elm", rev = "df4cb639c01b76bc9ac9cc66788709a6da20002c" }
1087[[language]]
1088name = "iex"
1089scope = "source.iex"
1090injection-regex = "iex"
1091file-types = ["iex"]
1092roots = []
1094[[grammar]]
1095name = "iex"
1096source = { git = "https://github.com/elixir-lang/tree-sitter-iex", rev = "39f20bb51f502e32058684e893c0c0b00bb2332c" }
1098[[language]]
1099name = "rescript"
1100scope = "source.rescript"
1101injection-regex = "rescript"
1102file-types = ["res"]
1103roots = ["bsconfig.json"]
1104auto-format = true
1105comment-token = "//"
1106language-server = { command = "rescript-language-server", args = ["--stdio"] }
1107indent = { tab-width = 2, unit = " " }
1109[[grammar]]
1110name = "rescript"
1111source = { git = "https://github.com/jaredramirez/tree-sitter-rescript", rev = "4cd7ba91696886fdaca086fb32b5fd8cc294a129" }
1113[[language]]
1114name = "erlang"
1115scope = "source.erlang"
1116injection-regex = "erl(ang)?"
1117file-types = ["erl", "hrl", "app", "rebar.config", "rebar.lock"]
1118roots = ["rebar.config"]
1119comment-token = "%%"
1120indent = { tab-width = 4, unit = " " }
1121language-server = { command = "erlang_ls" }
1123[language.auto-pairs]
1124'(' = ')'
1125'{' = '}'
1126'[' = ']'
1127'"' = '"'
1128"'" = "'"
1129'`' = "'"
1131[[grammar]]
1132name = "erlang"
1133source = { git = "https://github.com/the-mikedavis/tree-sitter-erlang", rev = "0e7d677d11a7379686c53c616825714ccb728059" }
1135[[language]]
1136name = "kotlin"
1137scope = "source.kotlin"
1138file-types = ["kt", "kts"]
1139roots = ["settings.gradle", "settings.gradle.kts"]
1140comment-token = "//"
1141indent = { tab-width = 4, unit = " " }
1142language-server = { command = "kotlin-language-server" }
1144[[grammar]]
1145name = "kotlin"
1146source = { git = "https://github.com/fwcd/tree-sitter-kotlin", rev = "a4f71eb9b8c9b19ded3e0e9470be4b1b77c2b569" }
1148[[language]]
1149name = "hcl"
1150scope = "source.hcl"
1151injection-regex = "(hcl|tf|nomad)"
1152file-types = ["hcl", "tf", "nomad"]
1153roots = []
1154comment-token = "#"
1155indent = { tab-width = 2, unit = " " }
1156language-server = { command = "terraform-ls", args = ["serve"], language-id = "terraform" }
1157auto-format = true
1159[[grammar]]
1160name = "hcl"
1161source = { git = "https://github.com/MichaHoffmann/tree-sitter-hcl", rev = "3cb7fc28247efbcb2973b97e71c78838ad98a583" }
1163[[language]]
1164name = "tfvars"
1165scope = "source.tfvars"
1166file-types = ["tfvars"]
1167roots = []
1168comment-token = "#"
1169indent = { tab-width = 2, unit = " " }
1170language-server = { command = "terraform-ls", args = ["serve"], language-id = "terraform-vars" }
1171auto-format = true
1172grammar = "hcl"
1174[[language]]
1175name = "org"
1176scope = "source.org"
1177injection-regex = "org"
1178file-types = ["org"]
1179roots = []
1180indent = { tab-width = 2, unit = " " }
1182[[grammar]]
1183name = "org"
1184source = { git = "https://github.com/milisims/tree-sitter-org", rev = "698bb1a34331e68f83fc24bdd1b6f97016bb30de" }
1186[[language]]
1187name = "solidity"
1188scope = "source.sol"
1189injection-regex = "(sol|solidity)"
1190file-types = ["sol"]
1191roots = []
1192comment-token = "//"
1193indent = { tab-width = 4, unit = " " }
1194language-server = { command = "solc", args = ["--lsp"] }
1196[[grammar]]
1197name = "solidity"
1198source = { git = "https://github.com/JoranHonig/tree-sitter-solidity", rev = "9004b86531cb424bd379424cf7266a4585f2af7d" }
1200[[language]]
1201name = "gleam"
1202scope = "source.gleam"
1203injection-regex = "gleam"
1204file-types = ["gleam"]
1205roots = ["gleam.toml"]
1206comment-token = "//"
1207indent = { tab-width = 2, unit = " " }
1208language-server = { command = "gleam", args = ["lsp"] }
1210[[grammar]]
1211name = "gleam"
1212source = { git = "https://github.com/gleam-lang/tree-sitter-gleam", rev = "d7861b2a4b4d594c58bb4f1be5f1f4ee4c67e5c3" }
1214[[language]]
1215name = "ron"
1216scope = "source.ron"
1217injection-regex = "ron"
1218file-types = ["ron"]
1219roots = []
1220comment-token = "//"
1221indent = { tab-width = 4, unit = " " }
1222grammar = "rust"
1224[[language]]
1225name = "r"
1226scope = "source.r"
1227injection-regex = "(r|R)"
1228file-types = ["r", "R"]
1229shebangs = ["r", "R"]
1230roots = []
1231comment-token = "#"
1232indent = { tab-width = 2, unit = " " }
1233language-server = { command = "R", args = ["--slave", "-e", "languageserver::run()"] }
1235[[grammar]]
1236name = "r"
1237source = { git = "https://github.com/r-lib/tree-sitter-r", rev = "cc04302e1bff76fa02e129f332f44636813b0c3c" }
1239[[language]]
1240name = "rmarkdown"
1241scope = "source.rmd"
1242injection-regex = "(r|R)md"
1243file-types = ["rmd", "Rmd"]
1244roots = []
1245indent = { tab-width = 2, unit = " " }
1246grammar = "markdown"
1247language-server = { command = "R", args = ["--slave", "-e", "languageserver::run()"] }
1249[[language]]
1250name = "swift"
1251scope = "source.swift"
1252injection-regex = "swift"
1253file-types = ["swift"]
1254roots = [ "Package.swift" ]
1255comment-token = "//"
1256auto-format = true
1257language-server = { command = "sourcekit-lsp" }
1259[[grammar]]
1260name = "swift"
1261source = { git = "https://github.com/alex-pinkus/tree-sitter-swift", rev = "77c6312c8438f4dbaa0350cec92b3d6dd3d74a66" }
1263[[language]]
1264name = "erb"
1265scope = "text.html.erb"
1266injection-regex = "erb"
1267file-types = ["erb"]
1268roots = []
1269indent = { tab-width = 2, unit = " " }
1270grammar = "embedded-template"
1272[[language]]
1273name = "ejs"
1274scope = "text.html.ejs"
1275injection-regex = "ejs"
1276file-types = ["ejs"]
1277roots = []
1278indent = { tab-width = 2, unit = " " }
1279grammar = "embedded-template"
1281[[grammar]]
1282name = "embedded-template"
1283source = { git = "https://github.com/tree-sitter/tree-sitter-embedded-template", rev = "d21df11b0ecc6fd211dbe11278e92ef67bd17e97" }
1285[[language]]
1286name = "eex"
1287scope = "source.eex"
1288injection-regex = "eex"
1289file-types = ["eex"]
1290roots = []
1291indent = { tab-width = 2, unit = " " }
1293[[grammar]]
1294name = "eex"
1295source = { git = "https://github.com/connorlay/tree-sitter-eex", rev = "f742f2fe327463335e8671a87c0b9b396905d1d1" }
1297[[language]]
1298name = "heex"
1299scope = "source.heex"
1300injection-regex = "heex"
1301file-types = ["heex"]
1302roots = []
1303indent = { tab-width = 2, unit = " " }
1305[[grammar]]
1306name = "heex"
1307source = { git = "https://github.com/phoenixframework/tree-sitter-heex", rev = "961bc4d2937cfd24ceb0a5a6b2da607809f8822e" }
1309[[language]]
1310name = "sql"
1311scope = "source.sql"
1312file-types = ["sql"]
1313roots = []
1314comment-token = "--"
1315indent = { tab-width = 4, unit = " " }
1316injection-regex = "sql"
1318[[grammar]]
1319name = "sql"
1320source = { git = "https://github.com/DerekStride/tree-sitter-sql", rev = "0caa7fa2ee00e0b770493a79d4efacc1fc376cc5" }
1322[[language]]
1323name = "gdscript"
1324scope = "source.gdscript"
1325injection-regex = "gdscript"
1326file-types = ["gd"]
1327shebangs = []
1328roots = ["project.godot"]
1329auto-format = true
1330comment-token = "#"
1331indent = { tab-width = 4, unit = "\t" }
1333[[grammar]]
1334name = "gdscript"
1335source = { git = "https://github.com/PrestonKnopp/tree-sitter-gdscript", rev = "2a6abdaa47fcb91397e09a97c7433fd995ea46c6" }
1337[[language]]
1338name = "godot-resource"
1339scope = "source.tscn"
1340injection-regex = "godot"
1341file-types = ["tscn","tres"]
1342shebangs = []
1343roots = ["project.godot"]
1344auto-format = false
1345comment-token = "#"
1346indent = { tab-width = 4, unit = "\t" }
1348[[grammar]]
1349name = "godot-resource"
1350source = { git = "https://github.com/PrestonKnopp/tree-sitter-godot-resource", rev = "b6ef0768711086a86b3297056f9ffb5cc1d77b4a" }
1352[[language]]
1353name = "nu"
1354scope = "source.nu"
1355injection-regex = "nu"
1356file-types = ["nu"]
1357roots = []
1358comment-token = "#"
1359indent = { tab-width = 2, unit = " " }
1361[[grammar]]
1362name = "nu"
1363source = { git = "https://github.com/LhKipp/tree-sitter-nu", rev = "db4e990b78824c8abef3618e0f93b7fe1e8f4c0d" }
1365[[language]]
1366name = "vala"
1367scope = "source.vala"
1368injection-regex = "vala"
1369file-types = ["vala", "vapi"]
1370roots = []
1371comment-token = "//"
1372indent = { tab-width = 2, unit = " " }
1373language-server = { command = "vala-language-server" }
1375[[grammar]]
1376name = "vala"
1377source = { git = "https://github.com/vala-lang/tree-sitter-vala", rev = "c9eea93ba2ec4ec1485392db11945819779745b3" }
1379[[language]]
1380name = "hare"
1381scope = "source.hare"
1382injection-regex = "hare"
1383file-types = ["ha"]
1384roots = []
1385comment-token = "//"
1386indent = { tab-width = 8, unit = "\t" }
1388[[grammar]]
1389name = "hare"
1390source = { git = "https://git.sr.ht/~ecmma/tree-sitter-hare", rev = "bc26a6a949f2e0d98b7bfc437d459b250900a165" }
1392[[language]]
1393name = "devicetree"
1394scope = "source.devicetree"
1395injection-regex = "(dtsi?|devicetree|fdt)"
1396file-types = ["dts", "dtsi"]
1397roots = []
1398comment-token = "//"
1399indent = { tab-width = 4, unit = "\t" }
1401[[grammar]]
1402name = "devicetree"
1403source = { git = "https://github.com/joelspadin/tree-sitter-devicetree", rev = "877adbfa0174d25894c40fa75ad52d4515a36368" }
1405[[language]]
1406name = "cairo"
1407scope = "source.cairo"
1408injection-regex = "cairo"
1409file-types = ["cairo"]
1410roots = []
1411comment-token = "#"
1412indent = { tab-width = 4, unit = " " }
1414[[grammar]]
1415name = "cairo"
1416source = { git = "https://github.com/archseer/tree-sitter-cairo", rev = "5155c6eb40db6d437f4fa41b8bcd8890a1c91716" }
1418[[language]]
1419name = "cpon"
1420scope = "scope.cpon"
1421injection-regex = "cpon"
1422file-types = ["cpon", "cp"]
1423roots = []
1424auto-format = true
1425comment-token = "//"
1426indent = { tab-width = 2, unit = " " }
1428[[grammar]]
1429name = "cpon"
1430source = { git = "https://github.com/fvacek/tree-sitter-cpon", rev = "0d01fcdae5a53191df5b1349f9bce053833270e7" }
1432[[language]]
1433name = "odin"
1434auto-format = false
1435scope = "source.odin"
1436file-types = ["odin"]
1437roots = ["ols.json"]
1438language-server = { command = "ols", args = [] }
1439comment-token = "//"
1440indent = { tab-width = 4, unit = "\t" }
1442[[grammar]]
1443name = "odin"
1444source = { git = "https://github.com/MineBill/tree-sitter-odin", rev = "da885f4a387f169b9b69fe0968259ee257a8f69a" }
1446[[language]]
1447name = "meson"
1448scope = "source.meson"
1449injection-regex = "meson"
1450file-types = ["meson.build"]
1451roots = []
1452comment-token = "#"
1453indent = { tab-width = 2, unit = " " }
1455[[grammar]]
1456name = "meson"
1457source = { git = "https://github.com/bearcove/tree-sitter-meson", rev = "feea83be9225842490066522ced2d13eb9cce0bd" }
1459[[language]]
1460name = "sshclientconfig"
1461scope = "source.sshclientconfig"
1462file-types = [".ssh/config", "/etc/ssh/ssh_config"]
1463roots = []
1465[[grammar]]
1466name = "sshclientconfig"
1467source = { git = "https://github.com/metio/tree-sitter-ssh-client-config", rev = "769d7a01a2e5493b4bb5a51096c6bf4be130b024" }
1469[[language]]
1470name = "scheme"
1471scope = "source.scheme"
1472injection-regex = "scheme"
1473file-types = ["ss", "rkt"] # "scm",
1474roots = []
1475comment-token = ";"
1476indent = { tab-width = 2, unit = " " }
1478[[grammar]]
1479name = "scheme"
1480source = { git = "https://github.com/6cdh/tree-sitter-scheme", rev = "27fb77db05f890c2823b4bd751c6420378df146b" }
1482[[language]]
1483name = "v"
1484scope = "source.v"
1485file-types = ["v", "vv"]
1486shebangs = ["v run"]
1487roots = ["v.mod"]
1488language-server = { command = "vls", args = [] }
1489auto-format = true
1490comment-token = "//"
1491indent = { tab-width = 4, unit = "\t" }
1493[[grammar]]
1494name = "v"
1495source = { git = "https://github.com/vlang/vls", subpath = "tree_sitter_v", rev = "3e8124ea4ab80aa08ec77f03df53f577902a0cdd" }
1497[[language]]
1498name = "verilog"
1499scope = "source.verilog"
1500file-types = ["v", "vh", "sv", "svh"]
1501roots = []
1502comment-token = "//"
1503language-server = { command = "svlangserver", args = [] }
1504indent = { tab-width = 2, unit = " " }
1505injection-regex = "verilog"
1507[[grammar]]
1508name = "verilog"
1509source = { git = "https://github.com/andreytkachenko/tree-sitter-verilog", rev = "514d8d70593d29ef3ef667fa6b0e504ae7c977e3" }
1511[[language]]
1512name = "edoc"
1513scope = "source.edoc"
1514file-types = ["edoc", "edoc.in"]
1515injection-regex = "edoc"
1516roots = []
1517indent = { tab-width = 4, unit = " " }
1519[[grammar]]
1520name = "edoc"
1521source = { git = "https://github.com/the-mikedavis/tree-sitter-edoc", rev = "1691ec0aa7ad1ed9fa295590545f27e570d12d60" }
1523[[language]]
1524name = "jsdoc"
1525scope = "source.jsdoc"
1526injection-regex = "jsdoc"
1527file-types = ["jsdoc"]
1528roots = []
1529indent = { tab-width = 2, unit = " " }
1531[[grammar]]
1532name = "jsdoc"
1533source = { git = "https://github.com/tree-sitter/tree-sitter-jsdoc", rev = "189a6a4829beb9cdbe837260653b4a3dfb0cc3db" }
1535[[language]]
1536name = "openscad"
1537scope = "source.openscad"
1538injection-regex = "openscad"
1539file-types = ["scad"]
1540roots = []
1541comment-token = "//"
1542language-server = { command = "openscad-lsp", args = ["--stdio"] }
1543indent = { tab-width = 2, unit = "\t" }
1545[[grammar]]
1546name = "openscad"
1547source = { git = "https://github.com/bollian/tree-sitter-openscad", rev = "5c3ce93df0ac1da7197cf6ae125aade26d6b8972" }
1549[[language]]
1550name = "prisma"
1551scope = "source.prisma"
1552injection-regex = "prisma"
1553file-types = ["prisma"]
1554roots = ["package.json"]
1555comment-token = "//"
1556language-server = { command = "prisma-language-server", args = ["--stdio"] }
1557indent = { tab-width = 2, unit = " " }
1559[[grammar]]
1560name = "prisma"
1561source = { git = "https://github.com/victorhqc/tree-sitter-prisma", rev = "17a59236ac25413b81b1613ea6ba5d8d52d7cd6c" }
1563[[language]]
1564name = "clojure"
1565scope = "source.clojure"
1566injection-regex = "(clojure|clj|edn|boot)"
1567file-types = ["clj", "cljs", "cljc", "clje", "cljr", "cljx", "edn", "boot"]
1568roots = ["project.clj", "build.boot", "deps.edn", "shadow-cljs.edn"]
1569comment-token = ";"
1570language-server = { command = "clojure-lsp" }
1571indent = { tab-width = 2, unit = " " }
1573[[grammar]]
1574name = "clojure"
1575source = { git = "https://github.com/sogaiu/tree-sitter-clojure", rev = "e57c569ae332ca365da623712ae1f50f84daeae2" }
1577[[language]]
1578name = "starlark"
1579scope = "source.starlark"
1580injection-regex = "(starlark|bzl|bazel)"
1581file-types = ["bzl", "bazel", "BUILD"]
1582roots = []
1583comment-token = "#"
1584indent = { tab-width = 4, unit = " " }
1585grammar = "python"
1587[[language]]
1588name = "elvish"
1589scope = "source.elvish"
1590file-types = ["elv"]
1591roots = []
1592comment-token = "#"
1593indent = { tab-width = 2, unit = " " }
1594language-server = { command = "elvish", args = ["-lsp"] }
1595grammar = "elvish"
1597[[grammar]]
1598name = "elvish"
1599source = { git = "https://github.com/ckafi/tree-sitter-elvish", rev = "e50787cadd3bc54f6d9c0704493a79078bb8a4e5" }
1601[[language]]
1602name = "idris"
1603scope = "source.idr"
1604injection-regex = "idr"
1605file-types = ["idr"]
1606shebangs = []
1607roots = []
1608comment-token = "--"
1609indent = { tab-width = 2, unit = " " }
1610language-server = { command = "idris2-lsp" }
1612[[language]]
1613name = "fortran"
1614scope = "source.fortran"
1615injection-regex = "fortran"
1616file-types = ["f", "for", "f90", "f95", "f03"]
1617roots = ["fpm.toml"]
1618comment-token = "!"
1619indent = { tab-width = 4, unit = " "}
1620language-server = { command = "fortls", args = ["--lowercase_intrinsics"] }
1622[[grammar]]
1623name = "fortran"
1624source = { git = "https://github.com/stadelmanma/tree-sitter-fortran", rev = "f0f2f100952a353e64e26b0fa710b4c296d7af13" }
1626[[language]]
1627name = "ungrammar"
1628scope = "source.ungrammar"
1629injection-regex = "ungrammar"
1630file-types = ["ungram", "ungrammar"]
1631roots = []
1632comment-token = "//"
1633indent = { tab-width = 2, unit = " " }
1635[[grammar]]
1636name = "ungrammar"
1637source = { git = "https://github.com/Philipp-M/tree-sitter-ungrammar", rev = "0113de880a58ea14f2a75802e9b99fcc25003d9c" }
1639[[language]]
1640name = "dot"
1641scope = "source.dot"
1642injection-regex = "dot"
1643file-types = ["dot"]
1644roots = []
1645comment-token = "//"
1646indent = { tab-width = 4, unit = " " }
1647language-server = { command = "dot-language-server", args = ["--stdio"] }
1649[[grammar]]
1650name = "dot"
1651source = { git = "https://github.com/rydesun/tree-sitter-dot", rev = "917230743aa10f45a408fea2ddb54bbbf5fbe7b7" }
1653[[language]]
1654name = "cue"
1655scope = "source.cue"
1656injection-regex = "cue"
1657file-types = ["cue"]
1658roots = ["cue.mod"]
1659auto-format = true
1660comment-token = "//"
1661language-server = { command = "cuelsp" }
1662indent = { tab-width = 4, unit = "\t" }
1664[[grammar]]
1665name = "cue"
1666source = { git = "https://github.com/eonpatapon/tree-sitter-cue", rev = "61843e3beebf19417e4fede4e8be4df1084317ad" }
1668[[language]]
1669name = "slint"
1670scope = "source.slint"
1671injection-regex = "slint"
1672file-types = ["slint"]
1673roots = []
1674comment-token = "//"
1675indent = { tab-width = 4, unit = " " }
1676language-server = { command = "slint-lsp", args = [] }
1678[[grammar]]
1679name = "slint"
1680source = { git = "https://github.com/jrmoulton/tree-sitter-slint", rev = "0d4dda94f96623302dfc234e06be62a5717f47da" }
1682[[language]]
1683name = "task"
1684scope = "source.task"
1685injection-regex = "task"
1686file-types = ["task"]
1687roots = []
1688comment-token = "#"
1689indent = { tab-width = 2, unit = " " }
1691[[grammar]]
1692name = "task"
1693source = { git = "https://github.com/alexanderbrevig/tree-sitter-task", rev = "f2cb435c5dbf3ee19493e224485d977cb2d36d8b" }
1695[[language]]
1696name = "xit"
1697scope = "source.xit"
1698injection-regex = "xit"
1699file-types = ["xit"]
1700roots = []
1701indent = { tab-width = 4, unit = " " }
1703[[grammar]]
1704name = "xit"
1705source = { git = "https://github.com/synaptiko/tree-sitter-xit", rev = "7d7902456061bc2ad21c64c44054f67b5515734c" }
1707[[language]]
1708name = "esdl"
1709scope = "source.esdl"
1710injection-regex = "esdl"
1711file-types = ["esdl"]
1712comment-token = "#"
1713indent = { tab-width = 2, unit = " " }
1714roots = ["edgedb.toml"]
1716[[grammar]]
1717name ="esdl"
1718source = { git = "https://github.com/greym0uth/tree-sitter-esdl", rev = "b840c8a8028127e0a7c6e6c45141adade2bd75cf" }
1720[[language]]
1721name = "pascal"
1722scope = "source.pascal"
1723injection-regex = "pascal"
1724file-types = ["pas", "pp", "inc", "lpr", "lfm"]
1725roots = []
1726comment-token = "//"
1727indent = { tab-width = 2, unit = " " }
1728language-server = { command = "pasls", args = [] }
1730[[grammar]]
1731name = "pascal"
1732source = { git = "https://github.com/Isopod/tree-sitter-pascal", rev = "2fd40f477d3e2794af152618ccfac8d92eb72a66" }
1734[[language]]
1735name = "sml"
1736scope = "source.sml"
1737injection-regex = "sml"
1738file-types = ["sml"]
1739comment-token = "(*"
1740roots = []
1742[[grammar]]
1743name = "sml"
1744source = { git = "https://github.com/Giorbo/tree-sitter-sml", rev = "bd4055d5554614520d4a0706b34dc0c317c6b608" }
1746[[language]]
1747name = "jsonnet"
1748scope = "source.jsonnet"
1749file-types = ["libsonnet", "jsonnet"]
1750roots = ["jsonnetfile.json"]
1751comment-token = "//"
1752indent = { tab-width = 2, unit = " " }
1753language-server = { command = "jsonnet-language-server", args= ["-t", "--lint"] }
1755[[grammar]]
1756name = "jsonnet"
1757source = { git = "https://github.com/sourcegraph/tree-sitter-jsonnet", rev = "0475a5017ad7dc84845d1d33187f2321abcb261d" }
1759[[language]]
1760name = "astro"
1761scope = "source.astro"
1762injection-regex = "astro"
1763file-types = ["astro"]
1764roots = []
1765indent = { tab-width = 2, unit = " " }
1767[[grammar]]
1768name = "astro"
1769source = { git = "https://github.com/virchau13/tree-sitter-astro", rev = "5f5c3e73c45967df9aa42f861fad2d77cd4e0900" }
1771[[language]]
1772name = "bass"
1773scope = "source.bass"
1774injection-regex = "bass"
1775file-types = ["bass"]
1776roots = []
1777comment-token = ";"
1778indent = { tab-width = 2, unit = " " }
1779language-server = { command = "bass", args = ["--lsp"] }
1781[[grammar]]
1782name = "bass"
1783source = { git = "https://github.com/vito/tree-sitter-bass", rev = "501133e260d768ed4e1fd7374912ed5c86d6fd90" }