diff --git a/lua/nvim-tree/explorer/node-builders.lua b/lua/nvim-tree/explorer/node-builders.lua index 1d7c1f8403e..a6ffa7d76c9 100644 --- a/lua/nvim-tree/explorer/node-builders.lua +++ b/lua/nvim-tree/explorer/node-builders.lua @@ -23,7 +23,7 @@ function M.folder(parent, absolute_path, name) } end -local function is_executable(absolute_path, ext) +function M.is_executable(absolute_path, ext) if M.is_windows then return utils.is_windows_exe(ext) end @@ -35,7 +35,7 @@ function M.file(parent, absolute_path, name) return { absolute_path = absolute_path, - executable = is_executable(absolute_path, ext), + executable = M.is_executable(absolute_path, ext), extension = ext, fs_stat = uv.fs_stat(absolute_path), name = name, diff --git a/lua/nvim-tree/explorer/reload.lua b/lua/nvim-tree/explorer/reload.lua index e26a68b0a92..e9785c47a55 100644 --- a/lua/nvim-tree/explorer/reload.lua +++ b/lua/nvim-tree/explorer/reload.lua @@ -63,6 +63,10 @@ function M.reload(node, status) end end end + local n = nodes_by_path[abs] + if n then + n.executable = builders.is_executable(abs, n.extension) + end end end