Jakie pliki muszę utworzyć? Co powinno być w tych plikach? Czy jest gdzieś domyślny plik colorscheme, którego mogę używać i odpowiednio zmieniać wartości kolorów?
źródło
Jakie pliki muszę utworzyć? Co powinno być w tych plikach? Czy jest gdzieś domyślny plik colorscheme, którego mogę używać i odpowiednio zmieniać wartości kolorów?
Po pierwsze, Vim szuka w swoich folderach wykonawczych colors
katalogu. Oto miejsce, w którym powinny być przechowywane wszystkie schematy kolorów ( :help 'runtimepath'
)
Oznacza to, że będziesz potrzebować jednego pliku, który znajduje się w ~/.vim/colors
folderze. Domyślne schematy kolorów znajdują się w $VIMRUNTIME/colors
, gdzie $VIMRUNTIME
jest zwykle /usr/share/vim/vim74
lub w /usr/local/share/vim/vim74
katalogach, w zależności od sposobu instalacji Vima (zamień vim74 na vim73 dla Vima w wersji 7.3)
Teraz przejdź do części zabawy.
Aby rozpocząć tworzenie własnego schematu kolorów, zdecydowanie zalecamy przyjrzenie się domyślnym schematom kolorów i eksperymentowanie z ich modyfikacją.
Więc skopiuj domyślny schemat kolorów z $VIMRUNTIME/colors
folderu do ~/.vim/colors
folderu. Nazwij to coś, co odróżnia się od domyślnej nazwy schematu kolorów. Więc jeśli skopiowałeś desert
schemat kolorów dostarczany domyślnie z Vimem, nazwij plik jako default_mod.vim
lub coś w tym celu. Otwórz plik colorscheme i zmień, let g:colors_name
aby wyróżniał się również od domyślnego pliku colorscheme. Zgodnie z konwencją powinna być taka sama jak nazwa pliku colorscheme.
W colorscheme, wszystko co musisz zrobić, to dać kolory ctermbg
, ctermfg
, guibg
, guifg
(dla terminala tle, na pierwszym planie, GUI terminala tle, GUI kolory pierwszego planu) odpowiednio dla różnych zbudowany w grupach świateł. Aby sprawdzić listę grup wyróżnień, które możesz zmodyfikować, sprawdź :help highlight-default
. Opcjonalnie możesz także użyć atrybutów cterm
i, gui
aby określić, że chcesz wyróżnić grupę wyróżnień pogrubioną lub kursywą.
Na przykład ustawi to zielony kolor dla ciągu:
highlight String ctermbg=NONE ctermfg=107 guibg=NONE guifg=#95B47B
Możesz także użyć linków wyróżnienia, aby połączyć grupę wyróżnień z inną grupą. Jest to przydatne, jeśli chcesz, aby dwie grupy wyróżnień miały takie same kolory.
Na przykład możesz połączyć diffAdded
grupę wyróżnień z grupą wyróżnień Ciąg zdefiniowaną powyżej:
highlight link diffAdded String
Sprawdź strony takie jak Vivify i Villustrator . Zasadniczo umożliwiają graficzne tworzenie lub modyfikowanie schematu, a następnie pobieranie niezbędnych plików.
źródło
Istnieje kilka narzędzi, dzięki którym można to zrobić automatycznie:
źródło
Innym doskonałym narzędziem jest RNB firmy romainl, który korzysta z ERB . ERB (Embedded RuBy) to funkcja Ruby, która umożliwia generowanie tekstu z szablonów.
Korzystanie z tego narzędzia jest więc bardzo proste: najpierw musisz zdefiniować różne zmienne odpowiadające nomenklaturze twojego schematu kolorów i oczywiście jego rzeczywistej zawartości (jak powinny wyglądać kolory, które grupy chcesz użyć itp.) całkiem prosto, ponieważ autor napisał wiele komentarzy, aby ci pomóc. Następnie wystarczy podać niestandardowy szablon do erb, a narzędzie wygeneruje odpowiednie pliki.
źródło