Vim'de tam renkli desteği nasıl etkinleştiririm?

94

Güzel bir Vim colorcheme'm var ( xoria256 ) ve GVim’de parlak görünüyor, ancak Terminalde normal vim kullandığımda, colorscheme yalnızca kısmen desteklenir - örneğin, varsayılan yarı saydam patlıcan arka plan rengi kullanılır. Terminali, Vim colorcheme ürünümüzü sadık bir şekilde nasıl üretebilirim?

    
sordu David Siegel 28.07.2010 21:53

5 cevap

74

GNOME Terminali 256 rengi destekler, ancak desteğini duyurmaz. Aşağıdakileri koyarak vim otomatik algılamayı geçersiz kılabilirsiniz:

if $COLORTERM == 'gnome-terminal'
  set t_Co=256
endif
~ / .vimrc içinde.

Not : GNU ekranını kullanırsanız, bu 256 renkli kodları mutlu bir şekilde yiyebilir ve bunları temel 16 renge dönüştürebilir. Daha iyi bir düzeltme ekran / vim başlatmadan önce TERM değerini xterm-256color olarak değiştirmektir.

2017 için güncelle : Yeterince yeni bir Vim'iniz varsa (7.4.1799 veya daha yeni bir sürüm) ve yeterli düzeyde gelişmiş bir terminal öykünücüsü (VTE'nin yeterince yeni bir sürümüne dayalı olarak xterm veya gnome-terminal) ), :set termguicolors ve terminal vim, highlight guifg=#rrggbb guibg=#rrggbb kullanarak vim temanız tarafından tanımlanan tam 24 bit renkleri kullanacaktır.

    
verilen cevap Marius Gedminas 28.07.2010 22:55
44

Daha genel bir çözüm, "xterm-256color" terim türünü kurmaktır. 10.04'te varsayılan olarak yüklü olduğunu düşünüyorum. Daha önce, bunu elde etmek için "ncurses-term" yüklemeniz gerekiyordu.

Ardından, terim türünü .bashrc'de aşağıdakine benzer bir şekilde ayarlayın:

if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
    export TERM=xterm-256color
fi

Bazı programlar için yalnızca 256 renk özelliğine sahip olmayı tercih ederseniz (belki de bazılarını karıştırır) aşağıdakileri kullanın:

TERM=xterm-256color myprogram

ve belki de program için bir takma ad olarak ayarlayın.

Ardından terminal renk yeteneklerinizi şu şekilde kontrol edin:

$ tput colors
256

Vim'in tanınması için yukarıdaki vim ayarına hala ihtiyacınız olabilir. Çoğu uygulama 256 rengi otomatik olarak tanıyacaktır (eğer kullanabilirlerse).

Emacs ayrıca 256 renkle daha iyi renk temalarına sahiptir. 256 renk uyumlu çalışıp çalışmadığını kontrol etmek için:

M-x list-colors-display

256colors.pl , terminalinizdeki tüm renkleri gösterecek Perl komut dosyasıdır.

    
verilen cevap Dave Jennings 04.08.2010 15:10
36

Aşağıdaki satırı $HOME/.bashrc dosyanıza eklemelisiniz (tercihen dosyanın son satırında):

export TERM="xterm-256color"

Ve sakla. Sonra gnome terminalinizi yeniden başlatın. Bu değişiklik yalnızca vim'de değil, tüm terminal uygulamalarınızda da kullanılabilir.

Çalışıp çalışmadığını kontrol etmek için bu küçük komut dosyasını çalıştırın:

#!/usr/bin/env python
# Copyright (C) 2006 by Johannes Zellner, <[email protected]>
# modified by [email protected] to fit my output needs
# modified by [email protected] to fit my output needs

import sys
import os

def echo(msg):
    os.system('echo -n "' + str(msg) + '"')

def out(n):
    os.system("tput setab " + str(n) + "; echo -n " + ("\"% 4d\"" % n))
    os.system("tput setab 0")

# normal colors 1 - 16
os.system("tput setaf 16")
for n in range(8):
    out(n)
echo("\n")
for n in range(8, 16):
    out(n)

echo("\n")
echo("\n")

y=16
while y < 231:
    for z in range(0,6):
        out(y)
        y += 1

    echo("\n")


echo("\n")

for n in range(232, 256):
    out(n)
    if n == 237 or n == 243 or n == 249:
        echo("\n")

echo("\n")
os.system("tput setaf 7")
os.system("tput setab 0")

Ardından, aşağıdaki gibi bir şey göreceksiniz (gnome terminal temanıza bağlı olarak):

    
verilen cevap crncosta 25.11.2010 17:21
1

Evet, Gvim'i Vim gibi görünmesi için her zaman yapılandırabilirsiniz. Sadece bir ~ / .gvimrc dosyası oluşturup bu özelleştirme numaralarına yapıştırmanız gerekir:

set guioptions-=r  " no scrollbar on the right
set guioptions-=l  " no scrollbar on the left
set guioptions-=m  " no menu
set guioptions-=T  " no toolbar

Bunun senin problemini çözdüğünü sanmıyorum, ama kim bilir; -)

    
verilen cevap wassimans 25.11.2010 16:18
0

Vim için arka planda sağlam, opak bir renk kullanan ayrı bir profil yaptım. Vim'i her kullanışımda manuel olarak değiştiriyorum. Daha iyi bir yöntem olup olmadığından emin değil. Düşünmek isterim.

    
verilen cevap DLH 28.07.2010 22:17

Etiketlerdeki diğer soruları oku