57 lines
1.6 KiB
Lua
57 lines
1.6 KiB
Lua
local autocmd = vim.api.nvim_create_autocmd
|
|
|
|
-- autocmd({ "BufEnter", "QuitPre" }, {
|
|
-- nested = false,
|
|
-- callback = function(e)
|
|
-- local tree = require("nvim-tree.api").tree
|
|
--
|
|
-- -- Nothing to do if tree is not opened
|
|
-- if not tree.is_visible() then
|
|
-- return
|
|
-- end
|
|
--
|
|
-- local winCount = 0
|
|
-- for _, winId in ipairs(vim.api.nvim_list_wins()) do
|
|
-- if vim.api.nvim_win_get_config(winId).focusable then
|
|
-- winCount = winCount + 1
|
|
-- end
|
|
-- end
|
|
--
|
|
-- -- We want to quit and only one window besides tree is left
|
|
-- if e.event == "QuitPre" and winCount == 2 then
|
|
-- vim.api.nvim_cmd({ cmd = "qall" }, {})
|
|
-- end
|
|
--
|
|
-- -- :bd was probably issued an only tree window is left
|
|
-- -- Behave as if tree was closed (see `:h :bd`)
|
|
-- if e.event == "BufEnter" and winCount == 1 then
|
|
-- -- Required to avoid "Vim:E444: Cannot close last window"
|
|
-- vim.defer_fn(function()
|
|
-- -- close nvim-tree: will go to the last buffer used before closing
|
|
-- tree.toggle({ find_file = true, focus = true })
|
|
-- -- re-open nivm-tree
|
|
-- tree.toggle({ find_file = true, focus = false })
|
|
-- end, 10)
|
|
-- end
|
|
-- end,
|
|
-- })
|
|
|
|
autocmd("VimEnter", {
|
|
callback = function()
|
|
--NVIM_ENTER=1
|
|
vim.cmd([[call chansend(v:stderr, "\033]1337;SetUserVar=NVIM_ENTER=MQ==\007")]])
|
|
end,
|
|
})
|
|
|
|
autocmd("VimLeavePre", {
|
|
callback = function()
|
|
--NVIM_ENTER=0
|
|
vim.cmd([[call chansend(v:stderr, "\033]1337;SetUserVar=NVIM_ENTER=MA==\007")]])
|
|
end,
|
|
})
|
|
|
|
autocmd("VimLeave", {
|
|
pattern = "*",
|
|
command = "set guicursor=a:ver25",
|
|
})
|