Zaimportowałem nasłoneczniony schemat kolorów i paletę. Mój terminal ma prawidłowe kolory i tło, gvim ma prawidłowe kolory i tło, ale vim ma niepoprawnie kolorowe tło. Cały tekst jest poprawny, ale tło wydaje się być całkowicie czarne.
Oto mój .vimrc:
syntax enable
if has('gui_running')
set background=dark
else
set background=dark
endif
:set t_Co=256
let g:solarized_termcolors=256
colorscheme solarized
Gdyby ktoś miał jakieś sugestie, co może być przyczyną tego, byłbym bardzo zobowiązany. Uruchamiam xubuntu z domyślnym terminalem.
Powinienem również wspomnieć, że opcja światła daje bardzo żółte tło dla Vima.
vimrc
terminal
colorscheme
x11
Oberdiear
źródło
źródło
g:solarized_termcolors=256
opcji. Jeśli z przyjemnością użyjesz nasyconych kolorów w swoim terminalu, ta metoda działa o wiele lepiej. Tekst twojego pytania sugeruje, że skonfigurowałeś terminal tak, aby używał kolektorów słonecznych (chociaż wyświetlany zrzut ekranu nie wygląda tak jak on), więc w takim przypadku, dlaczego używasz tegog:solarized_termcolors=256
ustawienia?gnome-terminal
.Odpowiedzi:
Są dwa powody, dla których myślę, że tak się dzieje:
Używany przez Ciebie schemat kolorów nasyconych światłem słonecznym nie jest deklarowany
ctermfg
anictermbg
dotyczy żadnej z funkcji, które chcesz wyróżnić. Wypróbuj ten schemat kolorów , powinien wyglądać zasadniczo tak samo zarówno w twoim terminalu, jak i gvimie, jeśli tak jest, być może będziesz musiał zajrzeć za pomocą schematu kolorów, który deklarujectermfg
ictermbg
.Może być konieczne upewnienie się, że emulator terminala obsługuje kolory, które próbujesz wyświetlić:
ncurses-term
pakiet plików (który zapewnia plik/usr/share/terminfo/x/xterm+256color
) jest zainstalowany.Ustaw wartość
TERM
zmiennej środowiskowej , uruchamiającna muszli.
vim
od tej powłoki.Pamiętaj, że obie te rzeczy mogą się dziać jednocześnie, ale trudno jest zdiagnozować to bez dodatkowych informacji o systemie.
źródło
TERM
zmienna jest niepoprawna, ale nie mam pojęcia, jak ją zmienić.export TERM=xterm+256color
, NIE „kolor s ” (liczba mnoga). Ponadto uważam, że tak powinno byćxterm-256color
, NIE "** + ** 256 kolorów; ale mogę się mylić, szczególnie w kwestii używania go z solaryzacją. Zgodnie z tą odpowiedzią ,# Entries with embedded plus signs are designed to be included through use/tc capabilities, not used as standalone entries.
export TERM=xterm+256color
na OSX dostajęzle-line-finish:echoti:1: no such terminfo capability: rmkx
export TERM=xterm+256colors
pomogłem vimowi solaryzacyjnemu wykryć i użyć dokładnego koloru tła, tak jak ma to mój terminal.Świetna wiadomość, wszyscy. @Tom i @Rich ustawili mnie na właściwej ścieżce. Znalazłem rozwiązanie przedstawione tutaj . Ustawiłem mój .vimrc na prosty
To wydaje się naprawiać wszystko. Kolory nie wydają się tak jasne w przykładach czcionek , ale to może być po prostu ja. Dla każdego, kto chce użyć Solarized colorscheme i używa xfce4-terminal, po prostu zmiana terminalrc i .vimrc rozwiązała moje główne problemy. Dziękujemy wszystkim za pomoc!
źródło
set t_Co
wiersza w swoim vimrc: Vim może odczytać tę wartość z terminala (ustawienie't_Co'
wydaje się być kultem cargo Vima: wiele osób online zaleca to, nie rozumiejąc problemów, które próbują rozwiązać .)$TERM=screen
i ustawieniet_Co=16
rzeczywiście naprawia dla mnie problemy wizualne, ale przede wszystkim chciałbym wiedzieć, jaki jest związek.Myślę, że jest to kwestia zgodności tego
colorscheme
z terminalem. Wtyczka wcsaprox
cudowny sposób rozwiązuje wiele z tych problemów.Streszczenie:
Linki do wtyczki:
źródło
Barwnik nasłoneczniony terminalu-Vim może działać na dwa różne sposoby.
Tryb 16 kolorów: Solarized zawiera tylko 16 kolorów, więc w tym trybie ustawiasz terminal tak, aby używał kolorów Solarized jako swoich 16 kolorów, a Vim używa tylko tych kolorów. Na przykład, Vim colorscheme zażąda koloru terminala „1”, a terminal wyświetli to jako kolor szesnastkowy # dc322f.
Tryb 256 kolorów, w którym wybiera najbliższe dopasowania dla swoich 16 kolorów z palety 256 kolorów.
Ta pierwsza metoda jest zdecydowanie zalecana przez autora (i przeze mnie), i brzmi to tak, jakbyś chętnie używał tej metody, ponieważ twierdzisz, że „terminal ma właściwe kolory i tło”.
Z twojego ekranu wynika jednak, że twój terminal nie ma ustawionych prawidłowych kolorów. (Biały nie jest kolorem w zestawie nasłonecznionym i chociaż nie spuściłem oka, inny kolor tekstu na zrzucie ekranu nie wygląda mi tak, jakby to był Solaryzowany „Fiolet” (# 6c71c4).)
Jeśli usuniesz ustawienia linii
t_Co
ig:solarized_termcolors
vimrc * i poprawnie skonfigurujesz kolory terminala, powinieneś zauważyć, że 16-kolorowy solarizedchemchem kolory zacznie działać.* Linie te przełączają się w tryb solarny na tryb 256 (mniej wierny) kolorów. Powinno to również działać (podejrzewam, że @Jubal ma rację sugerując, że BCE jest tutaj problemem ), ale tryb 16 kolorów jest preferowany, chyba że wyraźnie nie chcesz używać solaryzacji w swoim terminalu.
źródło
Wygląda na to, że znalazłeś swoją odpowiedź. Miałem ten sam problem i nic powyżej nie działało. Co pracował dla mnie było za pomocą sprzeczka użytkownika
terminalrc
, w przeciwieństwie do sgerrand użytkownika .Moje istotne
vimrc
to po prostu:Mam nadzieję, że komuś pomoże!
źródło
Więc to działa dla mnie (na wszystkich terminalach, których używałem - xterm, konsole, gnome-terminal, iterm2, roxterm - zarówno na Linuksie, jak i OS X, także z gvim i macvim):
źródło
To był problem z uruchomieniem (używam terminalu Vima w Linux Mint) i niestety nie zapisałem specyfiki wszystkiego, co zrobiłem. Oto odpowiednia sekcja mojego vimrc:
Warto również sprawdzić ten projekt na GitHub .
źródło
Dla mnie zadziałało usunięcie tej części twoich ustawień
Korzystam z terminala xfce4
źródło
Miałem też ten problem
xfce-terminal
.Po krótkich badaniach odkryłem ten błąd : wszystko, co ustawisz
$TERM
w terminalu XFCE, jest po cichu ignorowane.Myślę, że tak naprawdę jest to błąd podstawowej (i nieobsługiwanej) starej biblioteki VTE, z której korzysta terminal XFCE (wciąż oparty na GTK + 2). Przejście na terminal GTK + 3, który domyślnie korzysta z nowej biblioteki VTE , rozwiązało problem.
źródło