return { "preservim/nerdtree", lazy = false, config = function() -- Open NERDTree when no file is specified; quit when it's the last window local augroup = vim.api.nvim_create_augroup("nerdtree_auto", { clear = true }) vim.api.nvim_create_autocmd("StdinReadPre", { group = augroup, callback = function() vim.g.std_in = 1 end, }) vim.api.nvim_create_autocmd("VimEnter", { group = augroup, callback = function() if vim.fn.argc() == 0 and vim.g.std_in == nil then vim.cmd("NERDTree") end end, }) vim.api.nvim_create_autocmd("BufEnter", { group = augroup, callback = function() if vim.fn.winnr("$") == 1 and vim.bo.filetype == "nerdtree" then vim.cmd("quit") end end, }) end, }