diff options
author | Lewis Russell <lewis6991@gmail.com> | 2023-05-18 10:52:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-18 10:52:01 +0100 |
commit | ef64e225f6f6c01280aa8472bebe812016f357bf (patch) | |
tree | a3fbfc39c1599e111fc02360a5cbf69ff581fb9f /runtime/lua/vim/treesitter/_fold.lua | |
parent | c9f47fca8b896ecb304294cce675fedac9ab926c (diff) | |
download | rneovim-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.lua | 4 |
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) |