aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/treesitter/_fold.lua
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-05-18 10:52:01 +0100
committerGitHub <noreply@github.com>2023-05-18 10:52:01 +0100
commitef64e225f6f6c01280aa8472bebe812016f357bf (patch)
treea3fbfc39c1599e111fc02360a5cbf69ff581fb9f /runtime/lua/vim/treesitter/_fold.lua
parentc9f47fca8b896ecb304294cce675fedac9ab926c (diff)
downloadrneovim-ef64e225f6f6c01280aa8472bebe812016f357bf.tar.gz
rneovim-ef64e225f6f6c01280aa8472bebe812016f357bf.tar.bz2
rneovim-ef64e225f6f6c01280aa8472bebe812016f357bf.zip
fix(treesitter): allow foldexpr without highlights (#23672)
Ref nvim-treesitter/nvim-treesitter#4748
Diffstat (limited to 'runtime/lua/vim/treesitter/_fold.lua')
-rw-r--r--runtime/lua/vim/treesitter/_fold.lua4
1 files changed, 2 insertions, 2 deletions
diff --git a/runtime/lua/vim/treesitter/_fold.lua b/runtime/lua/vim/treesitter/_fold.lua
index f6425d7cb9..a8f8c7967e 100644
--- a/runtime/lua/vim/treesitter/_fold.lua
+++ b/runtime/lua/vim/treesitter/_fold.lua
@@ -301,7 +301,8 @@ function M.foldexpr(lnum)
lnum = lnum or vim.v.lnum
local bufnr = api.nvim_get_current_buf()
- if not ts._has_parser(bufnr) or not lnum then
+ local parser = vim.F.npcall(ts.get_parser, bufnr)
+ if not parser then
return '0'
end
@@ -309,7 +310,6 @@ function M.foldexpr(lnum)
foldinfos[bufnr] = FoldInfo.new()
get_folds_levels(bufnr, foldinfos[bufnr])
- local parser = ts.get_parser(bufnr)
parser:register_cbs({
on_changedtree = function(tree_changes)
on_changedtree(bufnr, foldinfos[bufnr], tree_changes)