Yalnızca Vim'in etkin penceresi için arka plan rengi nasıl ayarlanır?


16

Küçük ama görsel olarak hoş bir özellik ve kullanılabilirliğe biraz ekleyerek, Vim'in aktif pencere için farklı arka plan rengi kullanmasını istiyorum.

İşte sonra ne olduğumu bir kroki:

resim açıklamasını buraya girin

Normalde bu vim tüm arka planı siyah olurdu, ancak yalnızca etkin pencerenin kullanıcının dikkatini vurgulamak için kendi rengi varsa. Yalnızca durum çubuğunu vurgulamak yeterli değildir!

Yanıtlar:


8

Hepatit, fikir için teşekkürler.

Her satırın önüne satır numaraları eklemek / kaldırmak için WinEnter ve WinLeave autocmd'leri değiştiriyorum:

augroup BgHighlight
    autocmd!
    autocmd WinEnter * set number
    autocmd WinLeave * set nonumber
augroup END

Hangi pencerenin etkin olduğunu izlemek artık daha şık.


Bu havalı. Çok kötü Satır numaralarını çok süslemiyorum, bu yüzden çok estetik değil.
nperson325681

3

Varsayılan arka plan rengini kontrol eden vurgu grupları " Normal" ve " NonText" dir. Ne yazık ki bunlar "global" vurgulardır ve pencere başına "yerelleştirilemez".

Ancak, burada gerçekten çirkin bir kludgy örneği:

augroup BgHighlight
    autocmd!
    vurgulayın ActiveWindow guibg =
    lightblue autocmd WinEnter * çağrı matchadd ('ActiveWindow', '. *', 10, 1682)
    autocmd WinLeave * çağrı matchdelete (1682)
augroup END

doautocmd BgHighlight WinEnter -

Bu sadece bir örnek olduğu için, guterg = ... ile birlikte bir ctermbg = ... vurgulama eklemek gibi kişisel ihtiyaçlarınıza göre bunu değiştirmeniz gerekecektir.

Dezavantajı, bunun tüm satır / pencere değil, dosyalardaki mevcut metnin arka planını vurgulamasıdır. (Dediğim gibi, çirkin ve kludgy.)


Güzel düşünce, ancak desen .*sadece bir dosyanın metniyle eşleşir; arka planın geri kalanından hiçbir şey. Buna ek olarak, ben sadece ctermbgözelliği ile terminal çalışma var . Tuhaf ...
nperson325681

Üzgünüm, cevabımda daha açık olmalıydım. Ben düzenledim.
Heptit
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.