나만의 색 구성표를 만들려면 어떻게해야합니까?


16

어떤 파일을 만들어야합니까? 이 파일 안에 무엇이 있어야합니까? 어딘가에 색상 값을 사용하고 변경할 수있는 기본 색상 표 파일이 있습니까?

답변:


15

색상 표 위치

먼저 Vim은 런타임 폴더에서 colors디렉토리 를 찾습니다 . 여기에 모든 색약을 보관해야합니다 ( :help 'runtimepath')

즉, ~/.vim/colors폴더 에있는 하나의 파일이 필요 합니다. 기본 colorschemes의 위치는 $VIMRUNTIME/colors어디 $VIMRUNTIME보통 /usr/share/vim/vim74또는 /usr/local/share/vim/vim74디렉토리, 빔이 (빔 버전 7.3을위한 vim73에 대한 대체 vim74) 설치 방법에 따라

이제 재미있는 부분에 도달하십시오.

색 구성표 만들기

자신 만의 색 구성표를 만들기 시작하려면 기본 색 구성표를보고 수정하는 방법을 실험 해 보는 것이 좋습니다.

따라서 기본 색 구성표를 $VIMRUNTIME/colors폴더 에서 폴더로 복사하십시오 ~/.vim/colors. 기본 색 구성표 이름과 구별되는 이름을 지정하십시오. 따라서 desert기본적으로 Vim과 함께 제공 되는 색상 표 를 복사 한 경우 파일 이름 default_mod.vim을 그 효과로 지정하십시오. colorscheme 파일을 열고 let g:colors_name기본 colorscheme 파일과 구별되도록를 변경하십시오. 관례 적으로 이것은 색 구성표 파일 이름과 같아야합니다.

색상 구성표에서, 당신이해야 할 모든이의 색상을 줄입니다 ctermbg, ctermfg, guibg, guifg하이라이트 그룹에 내장 된 다른에 대한 (터미널 배경, 터미널 전경, GUI 배경, 각각의 GUI 전경 색상). 수정할 수있는 하이라이트 그룹 목록을 확인하려면을 확인하십시오 :help highlight-default. 선택적으로 ctermand gui속성을 사용하여 강조 그룹을 굵게 또는 기울임 꼴로 지정할 수 있습니다.

예를 들어, 이것은 문자열에 녹색을 설정합니다 :

highlight String ctermbg=NONE ctermfg=107 guibg=NONE guifg=#95B47B

하이라이트 링크를 사용하여 하이라이트 그룹을 다른 그룹에 연결할 수도 있습니다. 이 기능은 두 개의 강조 그룹이 동일한 색상이되도록하려는 경우에 유용합니다.

예를 들어, diffAdded강조 그룹을 위에서 정의한 문자열 강조 그룹에 연결할 수 있습니다 .

highlight link diffAdded String


colorscheme.vim 파일 중 하나를 복사 한 다음 별도의 폴더에 넣으면 다른 컴퓨터에서 재사용 할 수 있습니까? 예를 들어 github의 리포지토리에 넣으면 복제하거나 플러그인 관리자 중 하나에서 활성화 할 수 있습니까?
dkns

@dkns, 그렇습니다. 예를 들어 colorscheme의 이름을 "dkns_colorscheme.vim"으로 지정하고 colors / 디렉토리에 넣은 다음 Github에 푸시 할 수 있습니다. 플러그인 관리자가 설치되어있는 경우이 저장소를 복제하면 Vim에서 색상 구성표를 사용할 수 있습니다.
akshay

다른 질문. 여기에 의견으로 게시하거나 다른 일반적인 질문을해야하는지 잘 모르겠습니다. cterm의 색상 값을 어떻게 찾을 수 있습니까? 이 테마를 GUI와 터미널에서 동일하게 보이게하고 싶지만 16 진수 값을 cterm 값으로 변환하는 방법을 모르겠습니다.
dkns

1
@dkns 터미널 색상은 터미널 에뮬레이터에서 사용되는 색상 팔레트에 크게 의존하기 때문에 수행하기가 매우 어렵습니다. 색 구성표를 만들 때 각 256 색의 모양을 표시하는 것이 도움이되었습니다. bin 폴더 에서이 작은 스크립트를 사용 합니다. 색상 선택기를 사용하여 동일한 gui 및 cterm 색상을 보장 할 색상을 선택할 수 있습니다. 나는 gui vim에 더 많은 색상이 있기 때문에 cterm-> gui에서 다른 방법으로 가지 않을 것입니다. 희망이 도움이됩니다.
akshay

7

VivifyVillustrator 와 같은 사이트를 확인하십시오 . 기본적으로 구성표를 그래픽으로 만들거나 조정할 수 있으며 필요한 파일을 다운로드 할 수 있습니다.


0

이것을 자동으로 만드는 도구가 있습니다 :

  • vivify : 매우 복잡합니다. 각 단일 하이라이트 그룹에 대해 각 색상을 수동으로 선택해야합니다.
  • vimcolors.org : 매우 간단하고 쉽습니다. 일부 색상을 선택하면 자동으로 구성표가 생성됩니다.

0

또 다른 훌륭한 도구는 ERB 를 사용하는 romainl의 RNB 입니다. ERB (Embedded RuBy)는 템플릿에서 일부 텍스트를 생성 할 수있는 Ruby의 기능입니다.

따라서이 도구의 사용법은 매우 간단합니다. 먼저 색상 체계의 명명법과 실제 내용 (색상 모양, 사용하려는 그룹 등)에 해당하는 다른 변수를 정의해야합니다. 저자가 당신을 돕기 위해 많은 의견을 썼기 때문에 매우 간단합니다. 그런 다음 사용자 정의 된 템플리트를 erb에 제공하면 도구가 올바른 파일을 생성합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.