summaryrefslogtreecommitdiff
path: root/lua/core/nvimtree.lua
diff options
context:
space:
mode:
authorWilliam Goulois <[email protected]>2021-08-03 06:54:57 +0200
committerGitHub <[email protected]>2021-08-03 04:54:57 +0000
commitdc3b47b7e7d015a8f47c5dae5d50e4d50f9e1cfb (patch)
tree69a9763eb0f7d427c9df7c4e6fe8e3d622363cb5 /lua/core/nvimtree.lua
parentfc018cdc4735e3ba3e456a153ab672c8eb4df043 (diff)
[Feature]: Add possibility to focus nvimtree instead of toggle (#1074)
Diffstat (limited to 'lua/core/nvimtree.lua')
-rw-r--r--lua/core/nvimtree.lua34
1 files changed, 32 insertions, 2 deletions
diff --git a/lua/core/nvimtree.lua b/lua/core/nvimtree.lua
index dd1f4f36..4e3c0ef6 100644
--- a/lua/core/nvimtree.lua
+++ b/lua/core/nvimtree.lua
@@ -3,6 +3,7 @@ local M = {}
M.config = function()
lvim.builtin.nvimtree = {
side = "left",
+ width = 30,
show_icons = {
git = 1,
folders = 1,
@@ -65,6 +66,35 @@ M.setup = function()
}
end
--
+M.focus_or_close = function()
+ local view_status_ok, view = pcall(require, "nvim-tree.view")
+ if not view_status_ok then
+ return
+ end
+ local a = vim.api
+
+ local curwin = a.nvim_get_current_win()
+ local curbuf = a.nvim_win_get_buf(curwin)
+ local bufnr = view.View.bufnr
+ local winnr = view.get_winnr()
+
+ if view.win_open() then
+ if curwin == winnr and curbuf == bufnr then
+ view.close()
+ if package.loaded["bufferline.state"] then
+ require("bufferline.state").set_offset(0)
+ end
+ else
+ view.focus()
+ end
+ else
+ view.open()
+ if package.loaded["bufferline.state"] and lvim.builtin.nvimtree.side == "left" then
+ -- require'bufferline.state'.set_offset(lvim.builtin.nvimtree.width + 1, 'File Explorer')
+ require("bufferline.state").set_offset(lvim.builtin.nvimtree.width + 1, "")
+ end
+ end
+end
--
M.toggle_tree = function()
local view_status_ok, view = pcall(require, "nvim-tree.view")
@@ -78,8 +108,8 @@ M.toggle_tree = function()
end
else
if package.loaded["bufferline.state"] and lvim.builtin.nvimtree.side == "left" then
- -- require'bufferline.state'.set_offset(31, 'File Explorer')
- require("bufferline.state").set_offset(31, "")
+ -- require'bufferline.state'.set_offset(lvim.builtin.nvimtree.width + 1, 'File Explorer')
+ require("bufferline.state").set_offset(lvim.builtin.nvimtree.width + 1, "")
end
require("nvim-tree").toggle()
end