mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 19:17:02 -04:00
feat: add kos parser and queries (#8389)
This commit is contained in:
parent
300b906a95
commit
31fc7e10cd
7 changed files with 365 additions and 0 deletions
149
tests/query/highlights/kos/test.kos
Normal file
149
tests/query/highlights/kos/test.kos
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
#!/usr/bin/env kos
|
||||
# ^ keyword.directive
|
||||
public var item = 1;
|
||||
# ^ keyword
|
||||
# ^ keyword
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
# ^ punctuation.delimiter
|
||||
|
||||
# hash comment
|
||||
# <- @comment @spell
|
||||
|
||||
// slash comment
|
||||
# <- @comment @spell
|
||||
|
||||
/* block comment */
|
||||
# <- @comment @spell
|
||||
|
||||
fun name(arg1,
|
||||
# ^ keyword.function
|
||||
# ^ function
|
||||
# ^ punctuation.bracket
|
||||
# ^ variable
|
||||
# ^ punctuation.delimiter
|
||||
arg2 = "default",
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ string
|
||||
# ^ punctuation.delimiter
|
||||
arg3...)
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ punctuation.bracket
|
||||
{
|
||||
# <- punctuation.bracket
|
||||
arg1 += 1
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 -= 2
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 *= 3
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 /= 4
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 %= 5
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 |= 6
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 &= 7
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 ^= 8
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 <<= 9
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 >>= 10
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1 >>>= 11
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
arg1.prop[arg1](arg1)[void] = true
|
||||
# ^ variable
|
||||
# ^ punctuation.delimiter
|
||||
# ^ property
|
||||
# ^ punctuation.bracket
|
||||
# ^ variable
|
||||
# ^ punctuation.bracket
|
||||
# ^ punctuation.bracket
|
||||
# ^ variable
|
||||
# ^ punctuation.bracket
|
||||
# ^ punctuation.bracket
|
||||
# ^ constant.builtin
|
||||
# ^ operator
|
||||
# ^ boolean
|
||||
arg1 = 1 * (arg1 + 2) / arg1 - 3 % arg1
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
# ^ operator
|
||||
# ^ punctuation.bracket
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
# ^ punctuation.bracket
|
||||
# ^ operator
|
||||
# ^ variable
|
||||
# ^ operator
|
||||
# ^ number
|
||||
# ^ operator
|
||||
# ^ variable
|
||||
for const elem in arg1 {
|
||||
# ^ keyword.repeat
|
||||
# ^ keyword
|
||||
# ^ variable
|
||||
# ^ keyword.repeat
|
||||
# ^ variable
|
||||
# ^ punctuation.bracket
|
||||
if elem {
|
||||
# ^ keyword.conditional
|
||||
# ^ variable
|
||||
# ^ punctuation.bracket
|
||||
continue
|
||||
# ^ keyword.repeat
|
||||
}
|
||||
# ^ punctuation.bracket
|
||||
else {
|
||||
# ^ keyword.conditional
|
||||
# ^ punctuation.bracket
|
||||
break
|
||||
# ^ keyword.repeat
|
||||
}
|
||||
# ^ punctuation.bracket
|
||||
}
|
||||
# <- punctuation.bracket
|
||||
}
|
||||
# <- punctuation.bracket
|
||||
|
||||
name(42)
|
||||
# <- function.call
|
||||
# ^ punctuation.bracket
|
||||
# ^ number
|
||||
# ^ punctuation.bracket
|
||||
|
||||
name.name()
|
||||
# <- variable
|
||||
# ^ punctuation.delimiter
|
||||
# ^ function.method.call
|
||||
# ^ punctuation.bracket
|
||||
# ^ punctuation.bracket
|
||||
Loading…
Add table
Add a link
Reference in a new issue