diff options
Diffstat (limited to 'nvim/lua/plugins/oil.lua')
| -rw-r--r-- | nvim/lua/plugins/oil.lua | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/nvim/lua/plugins/oil.lua b/nvim/lua/plugins/oil.lua index 0c0a2c3..9a2ca21 100644 --- a/nvim/lua/plugins/oil.lua +++ b/nvim/lua/plugins/oil.lua @@ -15,14 +15,20 @@ return { return end - if vim.api.nvim_get_current_win() == oil_winnr then + local focused_win = vim.api.nvim_get_current_win() == oil_winnr + local correct_type = vim.bo[vim.api.nvim_win_get_buf(oil_winnr)].ft == "oil" + + if focused_win and correct_type then vim.api.nvim_win_close(oil_winnr, false) oil_winnr = nil + elseif not correct_type then + vim.cmd("topleft vsplit +Oil") + oil_winnr = vim.api.nvim_get_current_win() else vim.api.nvim_set_current_win(oil_winnr) end end, - desc = "Open Oil file explorer in a far left split, similar to :Lexplore" + desc = "Toggle Oil file explorer in a far left split, similar to :Lexplore" } }, cmd = "Oil" } |
