mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-19 11:50:09 -04:00
feat(parsers): add zsh support (#8240)
Co-authored-by: Christian Clason <c.clason@uni-graz.at> Co-authored-by: Riley Bruins <ribru17@hotmail.com> Co-authored-by: Tayfun Bocek <tayfunbocek@live.ca>
This commit is contained in:
parent
896e92a7f6
commit
1ddb266477
7 changed files with 762 additions and 0 deletions
78
runtime/queries/zsh/injections.scm
Normal file
78
runtime/queries/zsh/injections.scm
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
((comment) @injection.content
|
||||
(#set! injection.language "comment"))
|
||||
|
||||
((regex) @injection.content
|
||||
(#set! injection.language "regex"))
|
||||
|
||||
(heredoc_redirect
|
||||
(heredoc_body) @injection.content
|
||||
(heredoc_end) @injection.language)
|
||||
|
||||
; printf 'format'
|
||||
((command
|
||||
name: (command_name) @_command
|
||||
.
|
||||
argument: [
|
||||
(string) @injection.content
|
||||
(concatenation
|
||||
(string) @injection.content)
|
||||
(raw_string) @injection.content
|
||||
(concatenation
|
||||
(raw_string) @injection.content)
|
||||
])
|
||||
(#eq? @_command "printf")
|
||||
(#offset! @injection.content 0 1 0 -1)
|
||||
(#set! injection.include-children)
|
||||
(#set! injection.language "printf"))
|
||||
|
||||
; printf -v var 'format'
|
||||
((command
|
||||
name: (command_name) @_command
|
||||
argument: (word) @_arg
|
||||
.
|
||||
(_)
|
||||
.
|
||||
argument: [
|
||||
(string) @injection.content
|
||||
(concatenation
|
||||
(string) @injection.content)
|
||||
(raw_string) @injection.content
|
||||
(concatenation
|
||||
(raw_string) @injection.content)
|
||||
])
|
||||
(#eq? @_command "printf")
|
||||
(#eq? @_arg "-v")
|
||||
(#offset! @injection.content 0 1 0 -1)
|
||||
(#set! injection.include-children)
|
||||
(#set! injection.language "printf"))
|
||||
|
||||
; printf -- 'format'
|
||||
((command
|
||||
name: (command_name) @_command
|
||||
argument: (word) @_arg
|
||||
.
|
||||
argument: [
|
||||
(string) @injection.content
|
||||
(concatenation
|
||||
(string) @injection.content)
|
||||
(raw_string) @injection.content
|
||||
(concatenation
|
||||
(raw_string) @injection.content)
|
||||
])
|
||||
(#eq? @_command "printf")
|
||||
(#eq? @_arg "--")
|
||||
(#offset! @injection.content 0 1 0 -1)
|
||||
(#set! injection.include-children)
|
||||
(#set! injection.language "printf"))
|
||||
|
||||
((command
|
||||
name: (command_name) @_command
|
||||
.
|
||||
argument: [
|
||||
(string)
|
||||
(raw_string)
|
||||
] @injection.content)
|
||||
(#eq? @_command "bind")
|
||||
(#offset! @injection.content 0 1 0 -1)
|
||||
(#set! injection.include-children)
|
||||
(#set! injection.language "readline"))
|
||||
Loading…
Add table
Add a link
Reference in a new issue