windows 용 vim 폰트(font) 및 렌더링(redering) 옵션 설정


windows 에서 gvim 을 구동하면 기본 글꼴이 Fixedsys 라 가독성이 떨어지고 사용이 불편하므로 글꼴을 바꿔주고 사용하는 게 좋습니다.

특히 vim 7 이상부터는 direct-x 를 통한 렌더링 가속을 지원하므로 direct-x로 렌더링을 설정하면 GDI 에 비해 glyph 들을 더 빠르고 가독성 좋게 렌더링합니다.

다음은 제가 사용하는 windows 용 gvim 설정으로 OS 에 상관없이 "Jetbrain Mono" 글꼴을 사용하고 Windows 에서는 ClearType, OS X 에서는 anti aliasing 을 사용하는 설정입니다.

if has("gui_running")
  set encoding=utf-8  

  source $VIMRUNTIME/mswin.vim
  behave mswin
  
  if has('win32')
      set keymodel=startsel
       
      " set guifont=Source\ Code\ Pro:h16:cANSI:qDEFAULT
      set guifont=JetBrains\ Mono\ Regular:h18:cANSI:qDEFAULT
      " set guifont=D2Coding\ ligature:h16:cHANGEUL:qDEFAULT     
	  set renderoptions=type:directx,
                        \gamma:1.0,
                        \contrast:0.5,
                        \level:1,
                        \geom:1,
                        \renmode:5,
                        \taamode:1

      " restore Ctrl-F to Page down
      unmap <C-F>
  elseif has('gui_macvim')  
      set guifont=JetBrains\ Mono\ 16
      set antialias
  else
      set guifont=JetBrains\ Mono\ 16
  endif
  " Turn off toolbar
  set guioptions-=T
  " Turn on menu
  set guioptions+=m
end

font 설정

직접 폰트명,스타일,크기를 지정해서 설정하기가 어려울수 있으므로 다음 명령으로 "글꼴 설정 창" 을 띄워서 설정하면 됩니다.

set guifont=*

창에서 글꼴 설정이 끝났으면 다음 명령을 실행하면 설정한 글꼴 정보를 하단에 표시하므로 이 정보를 설정 파일(_gvimrc)에 추가해 주면 됩니다.

set guifont?


render option

설정 파일에 지정한 renderoptions 의 의미는 다음과 같습니다.

옵션type의미범위
gammafloat gamma1.0 - 2.2 (maybe)
contrastfloat enhancedContrastunknown
levelfloat clearTypeLevelunknown
geomintpixelGeometry(0 - FLAT, 1 - RGB, 2 - BGR)
renmode int
renderingMode
(0 - DEFAULT, 1 - ALIASED, 2 - GDI_CLASSIC, 3 - GDI_NATURAL, 4 - NATURAL, 5 - NATURAL_SYMMETRIC, 6 - OUTLINE)
taamode inttextAntialiasMode0 - DEFAULT, 1 - CLEARTYPE, 2 - GRAYSCALE, 3 - ALIASED



같이 보기

Ref