local auto, augroup = core.misc.auto, core.misc.augroup -- auto commands which interact with buffers without modifying them local bufcheck = augroup("bufcheck") -- auto commands which modify things on the filesystem local fsmod = augroup("fsmod") auto("FocusGained", { group = bufcheck, desc = "Update contents of file.", command = "checktime" }) auto("BufRead", { group = bufcheck, desc = "Return to the last place the buffer was closed in.", callback = function() vim.fn.setpos(".", vim.fn.getpos("'\"")) vim.cmd("norm! zz") end }) auto("BufWritePre", { group = fsmod, desc = "remove trailing spaces on file save", callback = function() local pos = vim.api.nvim_win_get_cursor(0) vim.cmd([[%s/\s\+$//e]]) vim.api.nvim_win_set_cursor(0, pos) end }) -- FIXME: disable for now until I can do more work and make it work better -- auto({ "BufEnter", "CursorMoved", "CursorMovedI" }, { -- group = bufcheck, -- callback = function() -- core.color.todo_comments() -- end -- }) core.color.setup_termbg_sync()