local api = vim.api local my_group = vim.api.nvim_create_augroup('GlepnirGroup', {}) api.nvim_create_autocmd({ 'BufWritePre' }, { group = my_group, pattern = { '/tmp/*', 'COMMIT_EDITMSG', 'MERGE_MSG', '*.tmp', '*.bak' }, command = 'setlocal noundofile', }) api.nvim_create_autocmd('BufRead', { group = my_group, pattern = '*.conf', command = 'setlocal filetype=conf', }) api.nvim_create_autocmd('TextYankPost', { group = my_group, pattern = '*', callback = function() vim.highlight.on_yank({ higroup = 'IncSearch', timeout = 400 }) end, }) -- disable default syntax in these file. -- when file is larged ,load regex syntax -- highlight will cause very slow api.nvim_create_autocmd('Filetype', { group = my_group, pattern = '*.c,*.cpp,*.lua,*.go,*.rs,*.py,*.ts,*.tsx', command = 'syntax off', }) api.nvim_create_autocmd({ 'CursorHold' }, { pattern = '*', callback = function(opt) require('internal.cursorword').cursor_moved(opt.buf) end, }) api.nvim_create_autocmd({ 'InsertEnter' }, { pattern = '*', callback = function() require('internal.cursorword').disable_cursorword() require('internal.epoch').epoch() end, }) --disable diagnostic in neovim test file *_spec.lua api.nvim_create_autocmd('FileType', { pattern = 'lua', callback = function(opt) local fname = api.nvim_buf_get_name(opt.buf) if fname:find('%w_spec%.lua') then vim.diagnostic.disable(opt.buf) end end, })