From 794293aa81ae296bece883f9cf055010af4972ec Mon Sep 17 00:00:00 2001 From: Julian Prein Date: Thu, 25 Aug 2022 04:18:33 +0200 Subject: [PATCH] vim: Wrap autocmds in augroups To prevent the piling up of autocommands when reloading the vimrc, wrap all autocommands in groups. --- .config/vim/vimrc.d/30-settings.vim | 5 ++++- .config/vim/vimrc.d/40-keys.vim | 5 ++++- .config/vim/vimrc.d/80-autocommands.vim | 13 +++++++++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/.config/vim/vimrc.d/30-settings.vim b/.config/vim/vimrc.d/30-settings.vim index 19a3900..e78e545 100644 --- a/.config/vim/vimrc.d/30-settings.vim +++ b/.config/vim/vimrc.d/30-settings.vim @@ -94,4 +94,7 @@ let g:netrw_liststyle=3 " TermDebug " Have source view to the side of the splits of debugger and program -autocmd SourcePost termdebug.vim let g:termdebug_wide = 1 +augroup termdebug_settings + au! + autocmd SourcePost termdebug.vim let g:termdebug_wide = 1 +augroup end diff --git a/.config/vim/vimrc.d/40-keys.vim b/.config/vim/vimrc.d/40-keys.vim index 1fc4c6f..a413a1d 100644 --- a/.config/vim/vimrc.d/40-keys.vim +++ b/.config/vim/vimrc.d/40-keys.vim @@ -52,7 +52,10 @@ map st :set spell=!&spell map sc :call CycleSpellLang() map ss :set spelllang= " Umlaute and sz in Insert and Command-line mode when spelllang is set to `de` -autocmd OptionSet spelllang silent call NewSpellLang(v:option_new, v:option_old) +augroup spelllang_set + au! + autocmd OptionSet spelllang silent call NewSpellLang(v:option_new, v:option_old) +augroup end function! NewSpellLang(new_lang, old_lang) let &spellfile = $XDG_DATA_HOME . '/vim/spell/' . a:new_lang . '.utf-8.add' diff --git a/.config/vim/vimrc.d/80-autocommands.vim b/.config/vim/vimrc.d/80-autocommands.vim index 589d22e..5d01f94 100644 --- a/.config/vim/vimrc.d/80-autocommands.vim +++ b/.config/vim/vimrc.d/80-autocommands.vim @@ -2,10 +2,15 @@ " Terminal if (has('nvim')) " Disable spellcheck - autocmd TermOpen * setlocal nospell + augroup terminal_no_spellcheck + au! + autocmd TermOpen * setlocal nospell + augroup END endif " change cursor shape depending on mode +augroup cursor_shape_by_mode +au! if (has('nvim')) " Beam when exiting autocmd VimLeave * silent !echo -ne "\e[5 q" @@ -38,9 +43,13 @@ else autocmd VimLeave * silent !echo -ne "\e[5 q" endif endif +augroup END " Custom bindings when debugging -autocmd SourcePost termdebug.vim tnoremap +augroup termdebug_bindings + au! + autocmd SourcePost termdebug.vim tnoremap +augroup END " Highlight word under cursor augroup highlight_current_word