aboutsummaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2023-06-26 09:25:46 +0200
committerGitHub <noreply@github.com>2023-06-26 09:25:46 +0200
commitb697c0cd4fb2ebe3f021599cb77122374db7fd59 (patch)
tree3677e970701f57fe86c29916453cce8c892b810b /runtime
parentcd6458123fb4859e47ffcd144ebbddf389a09610 (diff)
downloadrneovim-b697c0cd4fb2ebe3f021599cb77122374db7fd59.tar.gz
rneovim-b697c0cd4fb2ebe3f021599cb77122374db7fd59.tar.bz2
rneovim-b697c0cd4fb2ebe3f021599cb77122374db7fd59.zip
fix(treesitter): update lua parser and queries (#24148)
Diffstat (limited to 'runtime')
-rw-r--r--runtime/queries/lua/highlights.scm37
-rw-r--r--runtime/queries/lua/injections.scm27
2 files changed, 45 insertions, 19 deletions
diff --git a/runtime/queries/lua/highlights.scm b/runtime/queries/lua/highlights.scm
index 537a171441..96ffeae793 100644
--- a/runtime/queries/lua/highlights.scm
+++ b/runtime/queries/lua/highlights.scm
@@ -180,13 +180,40 @@
(parameters (identifier) @parameter)
-(function_call name: (identifier) @function.call)
-(function_declaration name: (identifier) @function)
+(function_declaration
+ name: [
+ (identifier) @function
+ (dot_index_expression
+ field: (identifier) @function)
+ ])
-(function_call name: (dot_index_expression field: (identifier) @function.call))
-(function_declaration name: (dot_index_expression field: (identifier) @function))
+(function_declaration
+ name: (method_index_expression
+ method: (identifier) @method))
+
+(assignment_statement
+ (variable_list .
+ name: [
+ (identifier) @function
+ (dot_index_expression
+ field: (identifier) @function)
+ ])
+ (expression_list .
+ value: (function_definition)))
-(method_index_expression method: (identifier) @method.call)
+(table_constructor
+ (field
+ name: (identifier) @function
+ value: (function_definition)))
+
+(function_call
+ name: [
+ (identifier) @function.call
+ (dot_index_expression
+ field: (identifier) @function.call)
+ (method_index_expression
+ method: (identifier) @method.call)
+ ])
(function_call
(identifier) @function.builtin
diff --git a/runtime/queries/lua/injections.scm b/runtime/queries/lua/injections.scm
index 3fcebe83f3..dbfe75ae31 100644
--- a/runtime/queries/lua/injections.scm
+++ b/runtime/queries/lua/injections.scm
@@ -3,7 +3,9 @@
(identifier) @_cdef_identifier
(_ _ (identifier) @_cdef_identifier)
]
- arguments: (arguments (string content: _ @injection.content)))
+ arguments:
+ (arguments
+ (string content: _ @injection.content)))
(#set! injection.language "c")
(#eq? @_cdef_identifier "cdef"))
@@ -11,15 +13,7 @@
name: (_) @_vimcmd_identifier
arguments: (arguments (string content: _ @injection.content)))
(#set! injection.language "vim")
- (#any-of? @_vimcmd_identifier "vim.cmd" "vim.api.nvim_command" "vim.api.nvim_exec2" "vim.api.nvim_cmd"))
-
-; vim.rcprequest(123, "nvim_exec_lua", "return vim.api.nvim_buf_get_lines(0, 0, -1, false)", false)
-((function_call
- name: (_) @_vimcmd_identifier
- arguments: (arguments . (_) . (string content: _ @_method) . (string content: _ @injection.content)))
- (#set! injection.language "lua")
- (#any-of? @_vimcmd_identifier "vim.rpcrequest" "vim.rpcnotify")
- (#eq? @_method "nvim_exec_lua"))
+ (#any-of? @_vimcmd_identifier "vim.cmd" "vim.api.nvim_command" "vim.api.nvim_command" "vim.api.nvim_exec2"))
((function_call
name: (_) @_vimcmd_identifier
@@ -27,10 +21,15 @@
(#set! injection.language "query")
(#any-of? @_vimcmd_identifier "vim.treesitter.query.set" "vim.treesitter.query.parse"))
+((function_call
+ name: (_) @_vimcmd_identifier
+ arguments: (arguments . (_) . (string content: _ @_method) . (string content: _ @injection.content)))
+ (#any-of? @_vimcmd_identifier "vim.rpcrequest" "vim.rpcnotify")
+ (#eq? @_method "nvim_exec_lua")
+ (#set! injection.language "lua"))
+
;; highlight string as query if starts with `;; query`
(string content: _ @injection.content
- (#set! injection.language "query")
- (#lua-match? @injection.content "^%s*;+%s?query"))
+ (#lua-match? @injection.content "^%s*;+%s?query")
+ (#set! injection.language "query"))
-; ((comment) @injection.content
-; (#set! injection.language "comment"))