diff --git a/after/plugin/nvim-tree.lua b/after/plugin/nvim-tree.lua index 84a0625f..e85d0184 100644 --- a/after/plugin/nvim-tree.lua +++ b/after/plugin/nvim-tree.lua @@ -1,12 +1,23 @@ -vim.api.nvim_create_autocmd({"QuitPre"}, { - callback = function() vim.cmd("NvimTreeClose") end, -}) +local function open_nvim_tree(data) + + -- buffer is a real file on the disk + local real_file = vim.fn.filereadable(data.file) == 1 + -- buffer is a [No Name] + local no_name = data.file == "" and vim.bo[data.buf].buftype == "" -local function open_nvim_tree() + if not real_file and not no_name then + return + end - -- open the tree - require("nvim-tree.api").tree.open() + -- open the tree, find the file but don't focus it + require("nvim-tree.api").tree.toggle({ focus = false, find_file = true, }) end +-- Auto open vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree }) + +-- Auto close +vim.api.nvim_create_autocmd({"QuitPre"}, { + callback = function() vim.cmd("NvimTreeClose") end, +})