97 lines
2.3 KiB
Lua
97 lines
2.3 KiB
Lua
vim.api.nvim_create_autocmd({ "User" }, {
|
|
pattern = { "AlphaReady" },
|
|
callback = function()
|
|
vim.cmd([[
|
|
set laststatus=0 | autocmd BufUnload <buffer> set laststatus=3
|
|
]])
|
|
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,
|
|
})
|
|
|
|
-- highlight on yank
|
|
vim.api.nvim_create_autocmd({ "TextYankPost" }, {
|
|
callback = function()
|
|
vim.highlight.on_yank()
|
|
end,
|
|
})
|
|
|
|
vim.api.nvim_create_autocmd({ "VimEnter" }, {
|
|
callback = function()
|
|
vim.cmd("hi link illuminatedWord LspReferenceText")
|
|
end,
|
|
})
|
|
|
|
-- go to last loc when opening a buffer
|
|
vim.api.nvim_create_autocmd("BufReadPost", {
|
|
callback = function()
|
|
local mark = vim.api.nvim_buf_get_mark(0, '"')
|
|
local lcount = vim.api.nvim_buf_line_count(0)
|
|
if mark[1] > 0 and mark[1] <= lcount then
|
|
pcall(vim.api.nvim_win_set_cursor, 0, mark)
|
|
end
|
|
end,
|
|
})
|
|
|
|
-- close some filetypes with <q>
|
|
vim.api.nvim_create_autocmd("FileType", {
|
|
pattern = {
|
|
"qf",
|
|
"help",
|
|
"man",
|
|
"notify",
|
|
"lspinfo",
|
|
"spectre_panel",
|
|
"startuptime",
|
|
"tsplayground",
|
|
"PlenaryTestPopup",
|
|
},
|
|
callback = function(event)
|
|
vim.bo[event.buf].buflisted = false
|
|
vim.keymap.set("n", "q", "<cmd>close<cr>", { buffer = event.buf, silent = true })
|
|
end,
|
|
})
|
|
|
|
-- add spellcheck and wrapping to some file types
|
|
vim.api.nvim_create_autocmd("FileType", {
|
|
pattern = { "gitcommit", "markdown" },
|
|
callback = function()
|
|
vim.opt_local.wrap = true
|
|
vim.opt_local.spell = 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])
|
|
]])
|
|
|
|
-- Run custom textclear command when exiting a .tex file (cleanup files)
|
|
vim.cmd([[autocmd VimLeave *.tex !texclear %]])
|