aboutsummaryrefslogtreecommitdiff
path: root/runtime/ftplugin/query.lua
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2023-11-30 20:35:25 +0000
committerJosh Rahm <joshuarahm@gmail.com>2023-11-30 20:35:25 +0000
commit1b7b916b7631ddf73c38e3a0070d64e4636cb2f3 (patch)
treecd08258054db80bb9a11b1061bb091c70b76926a /runtime/ftplugin/query.lua
parenteaa89c11d0f8aefbb512de769c6c82f61a8baca3 (diff)
parent4a8bf24ac690004aedf5540fa440e788459e5e34 (diff)
downloadrneovim-aucmd_textputpost.tar.gz
rneovim-aucmd_textputpost.tar.bz2
rneovim-aucmd_textputpost.zip
Merge remote-tracking branch 'upstream/master' into aucmd_textputpostaucmd_textputpost
Diffstat (limited to 'runtime/ftplugin/query.lua')
-rw-r--r--runtime/ftplugin/query.lua31
1 files changed, 30 insertions, 1 deletions
diff --git a/runtime/ftplugin/query.lua b/runtime/ftplugin/query.lua
index 3b99d67247..964c221ad4 100644
--- a/runtime/ftplugin/query.lua
+++ b/runtime/ftplugin/query.lua
@@ -1,6 +1,35 @@
-- Neovim filetype plugin file
-- Language: Tree-sitter query
--- Last Change: 2022 Mar 29
+-- Last Change: 2023 Aug 23
+
+if vim.b.did_ftplugin == 1 then
+ return
+end
+
+-- Do not set vim.b.did_ftplugin = 1 to allow loading of ftplugin/lisp.vim
+
+-- use treesitter over syntax
+vim.treesitter.start()
+
+-- set omnifunc
+vim.bo.omnifunc = 'v:lua.vim.treesitter.query.omnifunc'
+
+vim.opt_local.iskeyword:append('.')
+
+-- query linter
+local buf = vim.api.nvim_get_current_buf()
+local query_lint_on = vim.g.query_lint_on or { 'BufEnter', 'BufWrite' }
+
+if not vim.b.disable_query_linter and #query_lint_on > 0 then
+ vim.api.nvim_create_autocmd(query_lint_on, {
+ group = vim.api.nvim_create_augroup('querylint', { clear = false }),
+ buffer = buf,
+ callback = function()
+ vim.treesitter.query.lint(buf)
+ end,
+ desc = 'Query linter',
+ })
+end
-- it's a lisp!
vim.cmd([[ runtime! ftplugin/lisp.vim ]])