|  | When diff mode is deactivated, the old values for 'cursorline' and the
Comment highlight colour should be restored.
Thanks to Tony Mechelynck
(http://vim.1045645.n5.nabble.com/template/NamlServlet.jtp?macro=user_nodes&user=28373)
for the tip on how to save and restore highlight colours:
> The following is untested. It requires Vim version 7.
>
> function SaveCursorColor()
>         redir => highlight
>         silent hi Cursor
>         redir END
>         if highlight =~ 'links to '
>                 let s:hl-link = matchstr(highlight, 'links to \zs\S*')
>         elseif highlight =~ '\<cleared\>'
>                 let s:hl-link = 'NONE'
>         else
>                 let s:hl-link = ''
>                 for substr in ['term', 'cterm', 'ctermfg', 'ctermbg',
>                         \ 'gui', 'guifg', 'guibg', 'guisp']
>                         if highlight =~ substr . '='
>                                 let s:hl-{substr} = matchstr(highlight,
>                                         \ substr . '=\S*')
>                         else
>                                 let s:hl-{substr} = ''
>                         endif
>                 endfor
>         endif
> endfunction
> function RestoreCursorColor()
>         if !exists('s:hl-link')
>                 echoerr 'Cursor not saved, cannot restore'
>                 return
>         endif
>         hi clear Cursor
>         if s:hl-link == ''
>                 exe 'hi Cursor' s:hl-term s:hl-cterm s:hl-ctermfg
>                         \ s:hl-ctermbg s:hl-gui s:hl-guifg s:hl-guibg
>                         \ s:hl-guisp
>         elseif hl-link != 'NONE'
>                 exe 'hi link Cursor' s:hl-link
>         endif
> endfunction
>
>
> Best regards,
> Tony.
http://vim.1045645.n5.nabble.com/How-to-save-restore-the-hightlight-for-cursor-td1182624.html |