aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
authorSantos Gallegos <stsewd@protonmail.com>2021-07-05 12:36:55 -0500
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2021-07-18 16:44:25 +0000
commit9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc (patch)
treeeb893be5b007b1c72fefe60b8be91a70d758cd1c /lua
parentci(mergify): don't use queues (diff)
downloadnvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar.gz
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar.bz2
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar.lz
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar.xz
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.tar.zst
nvim-treesitter-9be9ebda0ad5d5ffb880829ad3315ab7c55a2acc.zip
Re-attach module when the file type is changed
Requires https://github.com/neovim/neovim/pull/14995 Closes https://github.com/nvim-treesitter/nvim-treesitter/issues/1249
Diffstat (limited to 'lua')
-rw-r--r--lua/nvim-treesitter/configs.lua11
1 files changed, 10 insertions, 1 deletions
diff --git a/lua/nvim-treesitter/configs.lua b/lua/nvim-treesitter/configs.lua
index cb02e7032..ff1f8078f 100644
--- a/lua/nvim-treesitter/configs.lua
+++ b/lua/nvim-treesitter/configs.lua
@@ -85,7 +85,7 @@ local function enable_mod_conf_autocmd(mod)
return
end
- local cmd = string.format("lua require'nvim-treesitter.configs'.attach_module('%s')", mod)
+ local cmd = string.format("lua require'nvim-treesitter.configs'.reattach_module('%s')", mod)
api.nvim_command(string.format("autocmd NvimTreesitter FileType * %s", cmd))
config_mod.loaded = true
@@ -442,6 +442,15 @@ function M.detach_module(mod_name, bufnr)
end
end
+-- Same as attach_module, but if the module is already attached, detach it first.
+-- @param mod_name the module name
+-- @param bufnr the bufnr
+-- @param lang the language of the buffer
+function M.reattach_module(mod_name, bufnr, lang)
+ M.detach_module(mod_name, bufnr)
+ M.attach_module(mod_name, bufnr, lang)
+end
+
-- Gets available modules
-- @param root root table to find modules
function M.available_modules(root)