diff --git a/lua/custom-autocmd.lua b/lua/custom-autocmd.lua index 4043e9f..b9be923 100644 --- a/lua/custom-autocmd.lua +++ b/lua/custom-autocmd.lua @@ -7,13 +7,9 @@ local utils = require("utils") -- Display a message when the current file is not in utf-8 format. -- Note that we need to use `unsilent` command here because of this issue: -- https://github.com/vim/vim/issues/4379 -api.nvim_create_augroup("non_utf8_file", { - clear = true -}) - api.nvim_create_autocmd({ "BufRead" }, { pattern = "*", - group = "non_utf8_file", + group = api.nvim_create_augroup("non_utf8_file", { clear = true }), callback = function() if vim.bo.fileencoding ~= 'utf-8' then vim.notify("File not in UTF-8 format!", vim.log.levels.WARN, { title = "nvim-config" }) @@ -22,26 +18,18 @@ api.nvim_create_autocmd({ "BufRead" }, { }) -- highlight yanked region, see `:h lua-highlight` -api.nvim_create_augroup("highlight_yank", { - clear = true -}) - api.nvim_create_autocmd({ "TextYankPost" }, { pattern = "*", - group = "highlight_yank", + group = api.nvim_create_augroup("highlight_yank", { clear = true }), callback = function() - vim.highlight.on_yank { higroup = "YankColor", timeout = 300, on_visual = false } + vim.highlight.on_yank { higroup = "YankColor", timeout = 300 } end }) -- Auto-generate packer_compiled.lua file -api.nvim_create_augroup("packer_auto_compile", { - clear = true -}) - api.nvim_create_autocmd({ "BufWritePost" }, { pattern = "*/nvim/lua/plugins.lua", - group = "packer_auto_compile", + group = api.nvim_create_augroup("packer_auto_compile", { clear = true }), callback = function(ctx) local cmd = "source " .. ctx.file vim.cmd(cmd) @@ -50,13 +38,9 @@ api.nvim_create_autocmd({ "BufWritePost" }, { }) -- Auto-create dir when saving a file, in case some intermediate directory does not exist -api.nvim_create_augroup("auto_create_dir", { - clear = true -}) - api.nvim_create_autocmd({ "BufWritePre" }, { pattern = "*", - group = "auto_create_dir", + group = api.nvim_create_augroup("auto_create_dir", { clear = true }), callback = function(ctx) local dir = fn.fnamemodify(ctx.file, ":p:h") utils.may_create_dir(dir) @@ -66,9 +50,7 @@ api.nvim_create_autocmd({ "BufWritePre" }, { -- Automatically reload the file if it is changed outside of Nvim, see https://unix.stackexchange.com/a/383044/221410. -- It seems that `checktime` does not work in command line. We need to check if we are in command -- line before executing this command, see also https://vi.stackexchange.com/a/20397/15292 . -api.nvim_create_augroup("auto_read", { - clear = true -}) +api.nvim_create_augroup("auto_read", { clear = true }) api.nvim_create_autocmd({ "FileChangedShellPost" }, { pattern = "*", @@ -87,3 +69,10 @@ api.nvim_create_autocmd({ "FocusGained", "CursorHold" }, { end end }) + +-- Resize all windows when we resize the terminal +api.nvim_create_autocmd("VimResized", { + group = api.nvim_create_augroup("win_autoresize", { clear = true }), + desc = "autoresize windows on resizing operation", + command = "wincmd =", +})