mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-13 17:00:09 -04:00
feat(faust): add tree-sitter-faust (#6043)
This commit is contained in:
parent
3e71d65447
commit
b444afa1da
5 changed files with 233 additions and 0 deletions
|
|
@ -225,6 +225,7 @@ We are looking for maintainers to add more parsers and to write query files for
|
||||||
- [ ] [embedded_template](https://github.com/tree-sitter/tree-sitter-embedded-template)
|
- [ ] [embedded_template](https://github.com/tree-sitter/tree-sitter-embedded-template)
|
||||||
- [x] [erlang](https://github.com/WhatsApp/tree-sitter-erlang) (maintained by @filmor)
|
- [x] [erlang](https://github.com/WhatsApp/tree-sitter-erlang) (maintained by @filmor)
|
||||||
- [x] [facility](https://github.com/FacilityApi/tree-sitter-facility) (maintained by @bryankenote)
|
- [x] [facility](https://github.com/FacilityApi/tree-sitter-facility) (maintained by @bryankenote)
|
||||||
|
- [x] [faust](https://github.com/khiner/tree-sitter-faust) (maintained by @khiner)
|
||||||
- [x] [fennel](https://github.com/travonted/tree-sitter-fennel) (maintained by @TravonteD)
|
- [x] [fennel](https://github.com/travonted/tree-sitter-fennel) (maintained by @TravonteD)
|
||||||
- [x] [firrtl](https://github.com/amaanq/tree-sitter-firrtl) (maintained by @amaanq)
|
- [x] [firrtl](https://github.com/amaanq/tree-sitter-firrtl) (maintained by @amaanq)
|
||||||
- [x] [fish](https://github.com/ram02z/tree-sitter-fish) (maintained by @ram02z)
|
- [x] [fish](https://github.com/ram02z/tree-sitter-fish) (maintained by @ram02z)
|
||||||
|
|
|
||||||
|
|
@ -155,6 +155,9 @@
|
||||||
"facility": {
|
"facility": {
|
||||||
"revision": "a52579670e2b14ec03d410c3c980fafaf6d659c4"
|
"revision": "a52579670e2b14ec03d410c3c980fafaf6d659c4"
|
||||||
},
|
},
|
||||||
|
"faust": {
|
||||||
|
"revision": "4609dd2c126a4803139db03eed784d26effe9844"
|
||||||
|
},
|
||||||
"fennel": {
|
"fennel": {
|
||||||
"revision": "15e4f8c417281768db17080c4447297f8ff5343a"
|
"revision": "15e4f8c417281768db17080c4447297f8ff5343a"
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -514,6 +514,15 @@ list.facility = {
|
||||||
maintainers = { "@bryankenote" },
|
maintainers = { "@bryankenote" },
|
||||||
}
|
}
|
||||||
|
|
||||||
|
list.faust = {
|
||||||
|
install_info = {
|
||||||
|
url = "https://github.com/khiner/tree-sitter-faust",
|
||||||
|
files = { "src/parser.c" },
|
||||||
|
},
|
||||||
|
filetype = "dsp",
|
||||||
|
maintainers = { "@khiner" },
|
||||||
|
}
|
||||||
|
|
||||||
list.fennel = {
|
list.fennel = {
|
||||||
install_info = {
|
install_info = {
|
||||||
url = "https://github.com/travonted/tree-sitter-fennel",
|
url = "https://github.com/travonted/tree-sitter-fennel",
|
||||||
|
|
|
||||||
218
queries/faust/highlights.scm
Normal file
218
queries/faust/highlights.scm
Normal file
|
|
@ -0,0 +1,218 @@
|
||||||
|
; Identifiers
|
||||||
|
(identifier) @variable
|
||||||
|
|
||||||
|
(process) @variable.builtin
|
||||||
|
|
||||||
|
(parameters
|
||||||
|
(identifier)) @variable.parameter
|
||||||
|
|
||||||
|
(global_metadata
|
||||||
|
key: (identifier) @variable.member)
|
||||||
|
|
||||||
|
(function_metadata
|
||||||
|
function_name: (identifier) @variable.member)
|
||||||
|
|
||||||
|
; Literals
|
||||||
|
(_
|
||||||
|
filename: (string)) @string.special.path
|
||||||
|
|
||||||
|
(documentation) @string.documentation @spell
|
||||||
|
|
||||||
|
[
|
||||||
|
(string)
|
||||||
|
(fstring)
|
||||||
|
] @string
|
||||||
|
|
||||||
|
(int) @number
|
||||||
|
|
||||||
|
(real) @number.float
|
||||||
|
|
||||||
|
; Types
|
||||||
|
(_
|
||||||
|
type:
|
||||||
|
[
|
||||||
|
(int_type)
|
||||||
|
(float_type)
|
||||||
|
(any_type)
|
||||||
|
]) @type.builtin
|
||||||
|
|
||||||
|
[
|
||||||
|
(single_precision)
|
||||||
|
(double_precision)
|
||||||
|
(quad_precision)
|
||||||
|
(fixed_point_precision)
|
||||||
|
] @attribute
|
||||||
|
|
||||||
|
; Functions
|
||||||
|
(function_definition
|
||||||
|
name: (identifier) @function)
|
||||||
|
|
||||||
|
(function_names) @function
|
||||||
|
|
||||||
|
[
|
||||||
|
(lambda)
|
||||||
|
(prefix)
|
||||||
|
(prim1)
|
||||||
|
(prim2)
|
||||||
|
(prim3)
|
||||||
|
(prim4)
|
||||||
|
(prim5)
|
||||||
|
(function_call)
|
||||||
|
] @function.call
|
||||||
|
|
||||||
|
[
|
||||||
|
"exp"
|
||||||
|
"log"
|
||||||
|
"log10"
|
||||||
|
"sqrt"
|
||||||
|
"abs"
|
||||||
|
"floor"
|
||||||
|
"ceil"
|
||||||
|
"rint"
|
||||||
|
"round"
|
||||||
|
"acos"
|
||||||
|
"asin"
|
||||||
|
"atan"
|
||||||
|
"cos"
|
||||||
|
"sin"
|
||||||
|
"tan"
|
||||||
|
"atan2"
|
||||||
|
"int"
|
||||||
|
"float"
|
||||||
|
"pow"
|
||||||
|
"min"
|
||||||
|
"max"
|
||||||
|
"fmod"
|
||||||
|
"remainder"
|
||||||
|
"prefix"
|
||||||
|
"attach"
|
||||||
|
"enable"
|
||||||
|
"control"
|
||||||
|
"rdtable"
|
||||||
|
"rwtable"
|
||||||
|
"select2"
|
||||||
|
"select3"
|
||||||
|
"lowest"
|
||||||
|
"highest"
|
||||||
|
"assertbounds"
|
||||||
|
(par)
|
||||||
|
(seq)
|
||||||
|
(sum)
|
||||||
|
(prod)
|
||||||
|
(component)
|
||||||
|
(library)
|
||||||
|
(vslider_type)
|
||||||
|
(hslider_type)
|
||||||
|
(nentry_type)
|
||||||
|
(vbargraph_type)
|
||||||
|
(hbargraph_type)
|
||||||
|
(vgroup_type)
|
||||||
|
(hgroup_type)
|
||||||
|
(tgroup_type)
|
||||||
|
"button"
|
||||||
|
"checkbox"
|
||||||
|
"soundfile"
|
||||||
|
"inputs"
|
||||||
|
"outputs"
|
||||||
|
"route"
|
||||||
|
] @function.builtin
|
||||||
|
|
||||||
|
; xor is a @keyword.operator
|
||||||
|
[
|
||||||
|
(add)
|
||||||
|
(sub)
|
||||||
|
(mult)
|
||||||
|
(div)
|
||||||
|
(mod)
|
||||||
|
(pow)
|
||||||
|
(or)
|
||||||
|
(and)
|
||||||
|
(lshift)
|
||||||
|
(rshift)
|
||||||
|
(lt)
|
||||||
|
(le)
|
||||||
|
(gt)
|
||||||
|
(ge)
|
||||||
|
(eq)
|
||||||
|
(neq)
|
||||||
|
(delay)
|
||||||
|
(one_sample_delay)
|
||||||
|
"="
|
||||||
|
"=>"
|
||||||
|
"->"
|
||||||
|
] @operator
|
||||||
|
|
||||||
|
(recursive
|
||||||
|
"~" @operator)
|
||||||
|
|
||||||
|
(sequential
|
||||||
|
":" @operator)
|
||||||
|
|
||||||
|
(split
|
||||||
|
"<:" @operator)
|
||||||
|
|
||||||
|
(merge
|
||||||
|
":>" @operator)
|
||||||
|
|
||||||
|
(parallel
|
||||||
|
"," @operator)
|
||||||
|
|
||||||
|
; Keywords
|
||||||
|
[
|
||||||
|
(par)
|
||||||
|
(seq)
|
||||||
|
(sum)
|
||||||
|
(prod)
|
||||||
|
] @keyword.repeat
|
||||||
|
|
||||||
|
(file_import
|
||||||
|
"import" @keyword.import)
|
||||||
|
|
||||||
|
[
|
||||||
|
(wire)
|
||||||
|
(cut)
|
||||||
|
(mem)
|
||||||
|
"declare"
|
||||||
|
"with"
|
||||||
|
"environment"
|
||||||
|
"case"
|
||||||
|
"ffunction"
|
||||||
|
"fconstant"
|
||||||
|
"fvariable"
|
||||||
|
] @keyword
|
||||||
|
|
||||||
|
(xor) @keyword.operator
|
||||||
|
|
||||||
|
; Punctuation
|
||||||
|
[
|
||||||
|
","
|
||||||
|
";"
|
||||||
|
"."
|
||||||
|
] @punctuation.delimiter
|
||||||
|
|
||||||
|
[
|
||||||
|
"("
|
||||||
|
")"
|
||||||
|
"["
|
||||||
|
"]"
|
||||||
|
"{"
|
||||||
|
"}"
|
||||||
|
] @punctuation.bracket
|
||||||
|
|
||||||
|
; Comments
|
||||||
|
(comment) @comment @spell
|
||||||
|
|
||||||
|
; Tags
|
||||||
|
[
|
||||||
|
"<mdoc>"
|
||||||
|
"</mdoc>"
|
||||||
|
"<metadata>"
|
||||||
|
"</metadata>"
|
||||||
|
"<equation>"
|
||||||
|
"</equation>"
|
||||||
|
"<diagram>"
|
||||||
|
"</diagram>"
|
||||||
|
"<listing"
|
||||||
|
"<notice"
|
||||||
|
"/>"
|
||||||
|
] @tag
|
||||||
2
queries/faust/injections.scm
Normal file
2
queries/faust/injections.scm
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
((comment) @injection.content
|
||||||
|
(#set! injection.language "comment"))
|
||||||
Loading…
Add table
Add a link
Reference in a new issue