aboutsummaryrefslogtreecommitdiff
path: root/config/nvim/lua/core/autocmds.lua
blob: 3594112537562155e1e5c919cc9c78e0e3842a28 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
local augroup = vim.api.nvim_create_augroup
local autocmd = vim.api.nvim_create_autocmd

-- Compile LaTeX on Save
autocmd("BufWritePost", {
  pattern = "*.tex",
  callback = function()
    vim.fn.jobstart({ "pdflatex", vim.fn.expand("%:p") }, { stdout_buffered = true, stderr_buffered = true })
  end,
})

-- Remove White Spaces on Save
autocmd("BufWritePre", {
	pattern = "*",
	callback = function()
		local currPos = vim.fn.getpos(".")
		vim.cmd([[%s/\s\+$//e]])
		vim.cmd([[%s/\n\+\%$//e]])
		vim.fn.cursor(currPos[2], currPos[3])
	end,
})

-- Stop Auto comemnting
vim.api.nvim_create_autocmd("BufEnter", {
  pattern = "*",
  callback = function()
    vim.opt.formatoptions:remove({ "r", "o" })
    vim.opt_local.formatoptions:remove({ "r", "o" })
  end,
})

-- let TabChars retain their assigned color
vim.api.nvim_create_autocmd({"BufEnter", "TabNew", "WinEnter"}, {
	pattern = "*",
	callback = function()
		vim.cmd("match TabChar /\t/")
	end
})