aboutsummaryrefslogtreecommitdiffstats
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
parentC/C++ locals: Make `field_identifier` a reference (diff)
downloadnvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar.gz
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar.bz2
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar.lz
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar.xz
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.tar.zst
nvim-treesitter-572a4a964bbe4071c3c26c72d4259412761196fa.zip
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 05221b66d..e8cd4523f 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 1662629ed..819cdd3f8 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 fe110a7dd..bf5b22081 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])