diff --git a/private_dot_config/nvim/lua/plugins/zenmode.lua b/private_dot_config/nvim/lua/plugins/zenmode.lua index 4159499..80109ca 100644 --- a/private_dot_config/nvim/lua/plugins/zenmode.lua +++ b/private_dot_config/nvim/lua/plugins/zenmode.lua @@ -1,4 +1,33 @@ return { - { "folke/zen-mode.nvim", ft = "mail" }, + { + "folke/zen-mode.nvim", + ft = "mail", + config = function() + require("zen-mode").setup({ + + window = { width = 0.85 }, + + on_close = function() + local is_last_buffer = #vim.fn.filter(vim.fn.range(1, vim.fn.bufnr("$")), "buflisted(v:val)") == 1 + + if vim.api.nvim_buf_get_var(0, "quitting") == 1 and is_last_buffer then + if vim.api.nvim_buf_get_var(0, "quitting_bang") == 1 then + vim.cmd("qa!") + else + vim.cmd("qa") + end + end + end, + + on_open = function() + vim.api.nvim_buf_set_var(0, "quitting", 0) + vim.api.nvim_buf_set_var(0, "quitting_bang", 0) + vim.cmd([[autocmd! QuitPre let b:quitting = 1]]) + vim.cmd("cabbrev q! let b:quitting_bang = 1 q!") + end, + }) + end, + }, + { "folke/twilight.nvim", ft = "mail" }, }