본문 바로가기

카테고리 없음

스페이스빔에서 vim과 neovim을 사용할 때 폰트 설정

폰트 설치

=========

스페이스빔(SpaceVim)을 설치하면 Neovim을 실행하면 알아서 Sauce Code Pro 폰트를 읽어들어려 실행한다. 

처음 설치할 때 지가 알아서 설치하려는 거 같은 데, 잘 안되는 경우가 있다.

바로 전에 얘기한 거처럼 다운받아서 설치하면 된다. 

간단히 말하면 리눅스에서는 ttf 파일을 ~/.local/share/fonts 디렉토리에 카피하고 fc-cache -f -v 명령으로 폰트 캐쉬를 업데이트한다. 

윈도우즈에서는 ttf 파일들을 마우스 우클릭하면 (남자는 우클릭) 설치 메뉴가 보인다. 

 

 

폰트 설정

=========

그럼 스페이스빔을 설치한 후, vim과 neovim에서 폰트를 설정하려면?

 

vim의 경우는 ~/.SpaceVim/vimrc 파일에서 예를 들면 다음과 같이 폰트 설정을 한다.

set guifont=JetBrains\ Mono\ 13

 

neovim의 경우는~/.SpaceVim/init.vim 파일에서 예를 들면 다음과 같이 폰트 설정을 한다.

set guifont=JetBrains\ Mono:h13

 

 

어떻게 폰트 이름과 크기를 기술하면 될까?

=================================

위에서와 같이 vim과 neovim에서 다르게 설정될 수 있다. 

따라서 어떻게 설정하는 게 적절한지 알아내려면, vim 이나 neovim을 실행한 상태에서

set guifont=*

을 실행하면 폰트 설정 대화상자가 뜬다.

여기서 폰트와 크기를 설정한 후에, 

set 명령을 쳐보면 어떻게 폰트가 설정되었는지 나오는 데, 그대로 vimrc나 init.vim 에 쓰면 된다. 

 

 

자질구레한 문제들

===============

vim의 경우는 위에서 말한대로 하면 잘된다. 

그런데 경험상 neovim 에서는 폰트가 여전히 Sauce Code Pro 였거나 가끔 폰트를 못 읽는 문제를 발생했다. 

 

그래서 ~/.SpaceVim 디렉토리에서 grep -R "Sauce" * 을 실행해 보았다.

 

dkkang@DK-BOOK:/mnt/c/Users/user/.SpaceVim$ grep -R "Sauce" *
autoload/SpaceVim.vim:"   guifont = "SauceCodePro Nerd Font Mono:h11"
autoload/SpaceVim.vim:"   let g:spacevim_guifont = "SauceCodePro Nerd Font Mono:h11"
autoload/SpaceVim.vim:let g:spacevim_guifont                 = 'SauceCodePro Nerd Font Mono:h11'

 

즉 다음의 명령에 의해 폰트 설정이 되었음을 알 수 있었다. 

let g:spacevim_guifont = 'SauceCodePro Nerd Font Mono:h11'

 

그런데, 이렇게 안하고 위에서 처럼 예를 들면 이렇게 해도 잘 돌아갔다. 

set guifont=JetBrains\ Mono:h14

따라서 neovim은 그냥 위와 같이 하면 된다. 

 

다음의 방식은 나중에 해보던지 하면 될 거 같다. 

let g:spacevim_guifont = 'SauceCodePro Nerd Font Mono:h11'

 

 

정리

=====

시스템에 따라 다르므로 다양한 방식을 고민하면 될 것이다.

정리하면 

 

(1) vim의 경우는 ~/.SpaceVim/vimrc 파일에서 예를 들면 다음과 같이 폰트 설정을 한다.

set guifont=JetBrains\ Mono\ 13

 

(2) neovim의 경우는~/.SpaceVim/init.vim 파일에서 예를 들면 다음과 같이 폰트 설정을 한다.

set guifont=JetBrains\ Mono:h13

 

(3) 어떻게 하는 게 최적인지는 set guifont=* 를 실행해서 설정한 후, set 명령을 실행해서 어떻게 출력되는지 보고 그대로 설정하자. (공백은 \를 앞에 붙인다.)

 

(4) 이건 안해봤다. 나중에 폰트로 골치 아파지면 시도해 보겠다.

let g:spacevim_guifont = 'SauceCodePro Nerd Font Mono:h11'