vim: Fix broken highlight of trailing whitespaces

Apply the following:

1. Switch to `matchadd` as `match` can only be used for **one**
   highlight
2. Use an autocommand group for better behaviour when reloading the
   vimrc.
3. Use just one pattern as it seems to work always. (Apparently `\%#` is
   not matched in normal mode)
This commit is contained in:
2022-08-25 03:21:34 +02:00
parent 73aa0e9752
commit 4415ff4653
2 changed files with 10 additions and 15 deletions

View File

@@ -40,3 +40,13 @@ if (get(g:, 'loaded_fzf'))
" Use a theme for bat in the preview that somewhat resembles onedark
let $BAT_THEME='TwoDark'
endif
" Highlight trailing whitespaces
" Pattern taken from https://vim.fandom.com/wiki/Highlight_unwanted_spaces
highlight TrailingWhitespace ctermbg=red guibg=red
augroup HighlightTrailingWhitespace
au!
" NOTE: VimEnter is necessary as well as WinNew is not triggered for the
" first window created after startup (see :help WinNew)
au VimEnter,WinNew * call matchadd("TrailingWhitespace", '\s\+\%#\@<!$')
augroup END