diff options
| author | delta <darkussdelta@gmail.com> | 2025-07-04 00:38:29 +0200 |
|---|---|---|
| committer | delta <darkussdelta@gmail.com> | 2025-07-04 00:38:29 +0200 |
| commit | b3530d7c4a102935fa26498a160ee1dc6c1e9c03 (patch) | |
| tree | d7751206a694bc5de2d6b34b0c077cfcd1855798 /.config/nvim/lua/autocmd.lua | |
| parent | df75ec5ed5e3848c497f0439acb43ec9246ad3e7 (diff) | |
:3
Diffstat (limited to '.config/nvim/lua/autocmd.lua')
| -rw-r--r-- | .config/nvim/lua/autocmd.lua | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/.config/nvim/lua/autocmd.lua b/.config/nvim/lua/autocmd.lua new file mode 100644 index 0000000..f13e2e9 --- /dev/null +++ b/.config/nvim/lua/autocmd.lua @@ -0,0 +1,34 @@ +local group = vim.api.nvim_create_augroup("PrismiteNvim", { clear = true }) +vim.api.nvim_create_autocmd({ "BufEnter", "BufWinEnter" }, { + group = group, + callback = function() + if require("nvim-tree.utils").is_nvim_tree_buf() then + vim.cmd "stopinsert" + end + end, +}) + +-- By https://github.com/marvinth01, taken from https://github.com/nvim-tree/nvim-tree.lua/wiki/Auto-Close#marvinth01 +vim.api.nvim_create_autocmd("QuitPre", { + group = group, + callback = function() + local tree_wins = {} + local floating_wins = {} + local wins = vim.api.nvim_list_wins() + for _, w in ipairs(wins) do + local bufname = vim.api.nvim_buf_get_name(vim.api.nvim_win_get_buf(w)) + if bufname:match "NvimTree_" ~= nil then + table.insert(tree_wins, w) + end + if vim.api.nvim_win_get_config(w).relative ~= "" then + table.insert(floating_wins, w) + end + end + if 1 == #wins - #floating_wins - #tree_wins then + -- Should quit, so we close all invalid windows. + for _, w in ipairs(tree_wins) do + vim.api.nvim_win_close(w, true) + end + end + end, +}) |
