vim.api.nvim_create_autocmd({ "User" }, { pattern = { "AlphaReady" }, callback = function() vim.cmd [[ set laststatus=0 | autocmd BufUnload set laststatus=3 ]] end, }) vim.api.nvim_create_autocmd({ "BufEnter" }, { pattern = { "term://*" }, callback = function() vim.cmd "startinsert!" vim.cmd "set cmdheight=1" end, }) vim.api.nvim_create_autocmd({ "VimResized" }, { callback = function() vim.cmd "tabdo wincmd =" end, }) vim.api.nvim_create_autocmd({ "CmdWinEnter" }, { callback = function() vim.cmd "quit" end, }) vim.api.nvim_create_autocmd({ "BufWinEnter" }, { callback = function() vim.cmd "set formatoptions-=cro" end, }) vim.api.nvim_create_autocmd({ "TextYankPost" }, { callback = function() vim.highlight.on_yank { higroup = "Visual", timeout = 200 } end, }) vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = function() vim.cmd "hi link illuminatedWord LspReferenceText" end, }) vim.api.nvim_create_autocmd({ "BufWinEnter" }, { pattern = { "*" }, callback = function() vim.cmd "checktime" end, }) vim.api.nvim_create_autocmd({ "BufWritePost" }, { pattern = { "*.ts" }, callback = function() vim.lsp.buf.format { async = true } end, }) -- Prevent auto comment on next line vim.cmd [[autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o]] -- Set filetype to tex for .tex files? vim.cmd [[autocmd BufRead,BufNewFile *.tex set filetype=tex]] -- Trim whitespace from files on save vim.cmd [[ autocmd BufWritePre * let currPos = getpos(".") autocmd BufWritePre * %s/\s\+$//e autocmd BufWritePre * %s/\n\+\%$//e autocmd BufWritePre *.[ch] %s/\%$/\r/e autocmd BufWritePre * cal cursor(currPos[1], currPos[2]) ]] -- Recompile and restart Xmonad on save of config file for Xmonad or Xmobar vim.cmd [[autocmd BufWritePost ~/.xmonad/xmonad.hs,~/.config/xmobar/xmobar-main.hs,~/.config/xmobar/xmobar-sub.hs,~/.config/xmobar/xmobar-single.hs !xmonad --recompile && xmonad --restart]] -- Run custom textclear command when exiting a .tex file (cleanup files) vim.cmd [[autocmd VimLeave *.tex !texclear %]] -- Run install when editing my scripts vim.cmd [[ autocmd BufWritePost ~/repos/inks-scripts/** !~/repos/inks-scripts/install ]]