Sorun, birçok (hepsi?) Renk kimyasının highlight clearkendi renklerini ayarlamadan önce tüm vurguları temizleyecek olmasıdır . Örneğin /usr/share/vim/vim74/colors/peachpuff.vim:
" First remove all existing highlighting.
set background=light
hi clear
if exists("syntax_on")
syntax reset
endif
let colors_name = "peachpuff"
hi Normal guibg=PeachPuff guifg=Black
hi SpecialKey term=bold ctermfg=4 guifg=Blue
" ... Many more highlights follow ...
Bu aynı zamandaUser1..9 grupları da temizler (bu pek mantıklı değil, IMHO).
Çözüm, autocmd'ye özel User1..9vurgular ColorSchemekoymaktır. Gönderen :help ColorScheme:
Bir renk şemasını yükledikten sonra. :colorschemeDesen, colorscheme adıyla eşleştirilir. <afile>bu seçeneğin ayarlandığı gerçek dosyanın <amatch>adı ve yeni renk şeması adı için kullanılabilir.
Bu yüzden "çıplak" bir highlightkomut kullanmak yerine şunu kullanın:
autocmd ColorScheme *
\ highlight User1 ctermbg=0 ctermfg=10 cterm=bold |
\ highlight User2 ctermbg=0 ctermfg=9 cterm=bold
Colorschemes'i sık sık değiştirirseniz, şunları kullanabilirsiniz:
autocmd ColorScheme colorscheme_one_name highlight User1 ctermbg=0 ctermfg=10 cterm=bold
autocmd ColorScheme another_scheme highlight User1 ctermbg=0 ctermfg=11 cterm=bold
renkleri belirli renklerle eşleştirmek için.