From 9b4244b95a76c59966a84a694b5a40068c993e65 Mon Sep 17 00:00:00 2001 From: Simon Ruderich Date: Sun, 1 Apr 2012 00:46:52 +0200 Subject: [PATCH] vimrc: Fix custom highlights disappearing in new windows. --- vimrc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/vimrc b/vimrc index 9ae5f86..8c16cd4 100644 --- a/vimrc +++ b/vimrc @@ -497,6 +497,15 @@ if has('syntax') augroup END endif +" Function to enable all custom highlights. Necessary as highlights are +" window-local and thus must be set for each new window. + function! s:CustomSyntaxHighlights() + " Not the first time called, nothing to do. + if exists('w:vimrc_syntax_run') + return + endif + let w:vimrc_syntax_run = 1 + " Highlight lines longer than 78 characters. Thanks to Tony Mechelynck " from the Vim mailing list. It can easily be " disabled when necessary with :2match (in Vim >= 700). @@ -520,6 +529,16 @@ if has('syntax') call matchadd('Error', '\%u' . s:x) endfor endif + endfunction +" Enable highlights for the current and all new windows. Thanks to bairui in +" #vim on Freenode (2012-04-01 00:22 CEST) for the WinEnter suggestion. + call CustomSyntaxHighlights() + if has('autocmd') + augroup vimrc + autocmd WinEnter * call CustomSyntaxHighlights() + augroup END + endif + " Settings for specific filetypes. -- 2.45.2