summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorThomas Vigouroux <tomvig38@gmail.com>2020-07-27 13:38:09 +0200
committerThomas Vigouroux <39092278+vigoux@users.noreply.github.com>2020-07-27 15:18:48 +0200
commit572a4a964bbe4071c3c26c72d4259412761196fa (patch)
tree406bec234a65675647360d2bad245020bf67c5f4 /lua
parent1d178d75ea30a2e9ab0151867c7e1ededec22e03 (diff)
configs: attach on unknown parsers too
Diffstat (limited to 'lua')
-rw-r--r--lua/nvim-treesitter/configs.lua6
-rw-r--r--lua/nvim-treesitter/parsers.lua2
-rw-r--r--lua/nvim-treesitter/ts_utils.lua1
3 files changed, 3 insertions, 6 deletions
diff --git a/lua/nvim-treesitter/configs.lua b/lua/nvim-treesitter/configs.lua
index 05221b66..e8cd4523 100644
--- a/lua/nvim-treesitter/configs.lua
+++ b/lua/nvim-treesitter/configs.lua
@@ -106,10 +106,6 @@ local function enable_module(mod, bufnr, lang)
local bufnr = bufnr or api.nvim_get_current_buf()
local lang = lang or parsers.get_buf_lang(bufnr)
- if not parsers.list[lang] then
- return
- end
-
M.attach_module(mod, bufnr, lang)
end
@@ -342,7 +338,7 @@ end
function M.attach_module(mod_name, bufnr, lang)
local resolved_mod = resolve_module(mod_name)
- if resolved_mod then
+ if resolved_mod and parsers.has_parser(lang) then
resolved_mod.attach(bufnr, lang)
end
end
diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua
index 1662629e..819cdd3f 100644
--- a/lua/nvim-treesitter/parsers.lua
+++ b/lua/nvim-treesitter/parsers.lua
@@ -252,7 +252,7 @@ for name, obj in pairs(M.list) do
end
function M.ft_to_lang(ft)
- return ft_to_parsername[ft]
+ return ft_to_parsername[ft] or ft
end
function M.lang_to_ft(lang)
diff --git a/lua/nvim-treesitter/ts_utils.lua b/lua/nvim-treesitter/ts_utils.lua
index fe110a7d..bf5b2208 100644
--- a/lua/nvim-treesitter/ts_utils.lua
+++ b/lua/nvim-treesitter/ts_utils.lua
@@ -113,6 +113,7 @@ function M.get_named_children(node)
end
function M.get_node_at_cursor(winnr)
+ if not parsers.has_parser() then return end
local cursor = api.nvim_win_get_cursor(winnr or 0)
local root = parsers.get_parser():parse():root()
return root:named_descendant_for_range(cursor[1]-1,cursor[2],cursor[1]-1,cursor[2])