diff options
author | Riley Bruins <ribru17@hotmail.com> | 2025-01-28 12:22:25 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-28 12:22:25 -0800 |
commit | 6711fa27ca6e822bfd2394ec513671617cc53efd (patch) | |
tree | 42e5b44be8599e671ce577ffd3873aad52d583a8 /runtime/lua/vim/treesitter/_fold.lua | |
parent | b88874d33c15bb0fd7a421230f8bf819056d7665 (diff) | |
download | rneovim-6711fa27ca6e822bfd2394ec513671617cc53efd.tar.gz rneovim-6711fa27ca6e822bfd2394ec513671617cc53efd.tar.bz2 rneovim-6711fa27ca6e822bfd2394ec513671617cc53efd.zip |
fix(treesitter): recalculate folds on VimEnter #32240
**Problem:** In the case where the user sets the treesitter foldexpr upon startup in
their `init.lua`, the fold info will be calculated before the parser has
been loaded in, meaning folds will be properly calculated until edits or
`:e`.
**Solution:** Refresh fold information upon `VimEnter` as a sanity check
to ensure that a parser really doesn't exist before always returning
`'0'` in the foldexpr.
Diffstat (limited to 'runtime/lua/vim/treesitter/_fold.lua')
-rw-r--r-- | runtime/lua/vim/treesitter/_fold.lua | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/lua/vim/treesitter/_fold.lua b/runtime/lua/vim/treesitter/_fold.lua index ad4110b83d..38318347a7 100644 --- a/runtime/lua/vim/treesitter/_fold.lua +++ b/runtime/lua/vim/treesitter/_fold.lua @@ -380,7 +380,7 @@ function M.foldexpr(lnum) if not foldinfos[bufnr] then foldinfos[bufnr] = FoldInfo.new(bufnr) - api.nvim_create_autocmd('BufUnload', { + api.nvim_create_autocmd({ 'BufUnload', 'VimEnter' }, { buffer = bufnr, once = true, callback = function() |