dotfiles/nvim/.config/nvim/init.lua
Marty Oehme a0968bcf93
nvim: Change init autocmds to lua versions
With neovim 0.7 bringing autocmd bindings in lua, we can now rely on a
built-in api instead of having to use our own helper function. Last
missing migration is the lsp formatting autogroup.
2022-06-13 17:49:25 +02:00

35 lines
1.5 KiB
Lua

-- many ideas for this config come from
-- https://github.com/elianiva/dotfiles/ - with much gratitude
local api = vim.api
require('settings')
require('plugins')
require('look')
require('maps')
-- Highlight whatever is being yanked
vim.api.nvim_create_autocmd({ "TextYankPost" }, {
command = 'silent! lua require"vim.highlight".on_yank{timeout=500}',
desc = "Highlight yanked text whenevery yanking something",
group = vim.api.nvim_create_augroup('highlightyanks', { clear = true }),
})
-- Special setting for editing gopass files - make sure nothing leaks outside the directories it is supposed to
vim.api.nvim_create_autocmd({ "BufNewFile", "BufRead" }, {
pattern = { "/dev/shm/gopass.*", "/dev/shm/pass.?*/?*.txt", "$TMPDIR/pass.?*/?*.txt", "/tmp/pass.?*/?*.txt" },
command = 'setlocal noswapfile nobackup noundofile nowritebackup viminfo=',
desc = "Don't leak any information when editing potential password files",
group = vim.api.nvim_create_augroup('passnoleak', { clear = true }),
})
api.nvim_exec('runtime abbrev.vim', false)
-- fixing neovim opening up at same moment as alacritty (see https://github.com/neovim/neovim/issues/11330)
vim.api.nvim_create_autocmd({ "VimEnter" }, {
callback = function()
local pid, WINCH = vim.fn.getpid(), vim.loop.constants.SIGWINCH
vim.defer_fn(function() vim.loop.kill(pid, WINCH) end, 20)
end,
desc = "Fix neovim sizing issues if opening same time as alacritty",
group = vim.api.nvim_create_augroup('alacritty_fixsize', { clear = true }),
})