diff --git a/lua/nvim-tree/lib.lua b/lua/nvim-tree/lib.lua index 82e63d20..d3b9a0dc 100644 --- a/lua/nvim-tree/lib.lua +++ b/lua/nvim-tree/lib.lua @@ -168,13 +168,18 @@ end function M.refresh_tree() if vim.v.exiting ~= vim.NIL then return end - local use_git = config.use_git() - if use_git then git.reload_roots() end refresh_nodes(M.Tree) - if use_git then vim.schedule(function() refresh_git(M.Tree) end) end + + local use_git = config.use_git() + if use_git then + vim.schedule(function() + git.reload_roots() + refresh_git(M.Tree) + end) + end if vim.g.nvim_tree_lsp_diagnostics == 1 then - diagnostics.update() + vim.schedule(diagnostics.update) end if view.win_open() then diff --git a/plugin/tree.vim b/plugin/tree.vim index e025ce6b..86a124b9 100644 --- a/plugin/tree.vim +++ b/plugin/tree.vim @@ -21,7 +21,7 @@ augroup NvimTree au WinClosed * lua require'nvim-tree'.on_leave() endif au ColorScheme * lua require'nvim-tree'.reset_highlight() - au User FugitiveChanged lua require'nvim-tree'.refresh() + au User FugitiveChanged,NeogitStatusRefreshed lua require'nvim-tree'.refresh() if get(g:, 'nvim_tree_tab_open') == 1 au TabEnter * lua require'nvim-tree'.tab_change() endif