mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 11:06:54 -04:00
feat(ipkg): add parser and queries (#7277)
Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
This commit is contained in:
parent
a295ba13d2
commit
f87c8956ae
8 changed files with 143 additions and 0 deletions
|
|
@ -293,6 +293,7 @@ We are looking for maintainers to add more parsers and to write query files for
|
|||
- [x] [idl](https://github.com/cathaysia/tree-sitter-idl) (maintained by @cathaysia)
|
||||
- [x] [ini](https://github.com/justinmk/tree-sitter-ini) (experimental, maintained by @theHamsta)
|
||||
- [x] [inko](https://github.com/inko-lang/tree-sitter-inko) (maintained by @yorickpeterse)
|
||||
- [x] [ipkg](https://github.com/srghma/tree-sitter-ipkg) (maintained by @srghma)
|
||||
- [x] [ispc](https://github.com/fab4100/tree-sitter-ispc) (maintained by @fab4100)
|
||||
- [x] [janet_simple](https://github.com/sogaiu/tree-sitter-janet-simple) (maintained by @sogaiu)
|
||||
- [x] [java](https://github.com/tree-sitter/tree-sitter-java) (maintained by @p00f)
|
||||
|
|
|
|||
|
|
@ -359,6 +359,9 @@
|
|||
"inko": {
|
||||
"revision": "0b08a8f976456a9271f70d4682143328d7224115"
|
||||
},
|
||||
"ipkg": {
|
||||
"revision": "8d3e9782f2d091d0cd39c13bfb3068db0c675960"
|
||||
},
|
||||
"ispc": {
|
||||
"revision": "9b2f9aec2106b94b4e099fe75e73ebd8ae707c04"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1068,6 +1068,14 @@ list.inko = {
|
|||
maintainers = { "@yorickpeterse" },
|
||||
}
|
||||
|
||||
list.ipkg = {
|
||||
install_info = {
|
||||
url = "https://github.com/srghma/tree-sitter-ipkg",
|
||||
files = { "src/parser.c", "src/scanner.c" },
|
||||
},
|
||||
maintainers = { "@srghma" },
|
||||
}
|
||||
|
||||
list.ispc = {
|
||||
install_info = {
|
||||
url = "https://github.com/fab4100/tree-sitter-ispc",
|
||||
|
|
|
|||
13
queries/ipkg/folds.scm
Normal file
13
queries/ipkg/folds.scm
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
[
|
||||
(source_file)
|
||||
(dependency_list)
|
||||
(module_list)
|
||||
(dependency_declaration)
|
||||
(module_declaration)
|
||||
(module_declaration)
|
||||
(package_declaration)
|
||||
(main_declaration)
|
||||
(executable_declaration)
|
||||
(version_declaration)
|
||||
(langversion_declaration)
|
||||
] @fold
|
||||
56
queries/ipkg/highlights.scm
Normal file
56
queries/ipkg/highlights.scm
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
; Keywords
|
||||
"package" @keyword.import
|
||||
|
||||
[
|
||||
"authors"
|
||||
"maintainers"
|
||||
"license"
|
||||
"brief"
|
||||
"readme"
|
||||
"homepage"
|
||||
"sourceloc"
|
||||
"bugtracker"
|
||||
"opts"
|
||||
"sourcedir"
|
||||
"builddir"
|
||||
"outputdir"
|
||||
"prebuild"
|
||||
"postbuild"
|
||||
"preinstall"
|
||||
"postinstall"
|
||||
"preclean"
|
||||
"postclean"
|
||||
"version"
|
||||
"langversion"
|
||||
"modules"
|
||||
"main"
|
||||
"executable"
|
||||
"depends"
|
||||
] @keyword
|
||||
|
||||
[
|
||||
"="
|
||||
(version_range_op)
|
||||
] @operator
|
||||
|
||||
"," @punctuation.delimiter
|
||||
|
||||
; Field values
|
||||
(string_value) @string
|
||||
|
||||
(boolean_value) @boolean
|
||||
|
||||
; Version numbers and ranges
|
||||
(version_number) @string.special
|
||||
|
||||
[
|
||||
(dependency_item)
|
||||
(package_name)
|
||||
(module_name)
|
||||
] @module
|
||||
|
||||
; Comments
|
||||
[
|
||||
(line_comment)
|
||||
(block_comment)
|
||||
] @comment @spell
|
||||
33
queries/ipkg/indents.scm
Normal file
33
queries/ipkg/indents.scm
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
; Indentation rules for Idris .ipkg files
|
||||
[
|
||||
(package_declaration)
|
||||
(field_declaration)
|
||||
(main_declaration)
|
||||
(executable_declaration)
|
||||
(version_declaration)
|
||||
(langversion_declaration)
|
||||
] @indent.begin
|
||||
|
||||
(dependency_declaration
|
||||
"=" @indent.begin
|
||||
(dependency_list
|
||||
"," @indent.begin))
|
||||
|
||||
(module_declaration
|
||||
"=" @indent.begin
|
||||
(module_list
|
||||
"," @indent.begin))
|
||||
|
||||
(field_declaration
|
||||
"=" @indent.begin)
|
||||
|
||||
"=" @indent.branch
|
||||
|
||||
(string_value) @indent.begin
|
||||
|
||||
[
|
||||
(line_comment)
|
||||
(block_comment)
|
||||
] @indent.ignore
|
||||
|
||||
(ERROR) @indent.auto
|
||||
5
queries/ipkg/injections.scm
Normal file
5
queries/ipkg/injections.scm
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
([
|
||||
(line_comment)
|
||||
(block_comment)
|
||||
] @injection.content
|
||||
(#set! injection.language "comment"))
|
||||
24
queries/ipkg/locals.scm
Normal file
24
queries/ipkg/locals.scm
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
; Scopes
|
||||
(source_file) @local.scope
|
||||
|
||||
; Definitions
|
||||
(package_declaration
|
||||
(package_name) @local.definition.import)
|
||||
|
||||
(module_declaration
|
||||
(module_list
|
||||
(module_name) @local.definition.namespace))
|
||||
|
||||
(main_declaration
|
||||
(module_name) @local.definition.import)
|
||||
|
||||
(executable_declaration
|
||||
(package_name) @local.definition.import)
|
||||
|
||||
; References
|
||||
(dependency_declaration
|
||||
(dependency_list
|
||||
(dependency_item
|
||||
(package_name) @local.reference)))
|
||||
|
||||
(module_name) @local.reference
|
||||
Loading…
Add table
Add a link
Reference in a new issue