gVim에서 글꼴 크기를 어떻게 변경합니까?


41

기본 명령을 사용하여 gVim에서 글꼴 크기를 변경하는 방법이 있습니까?

그렇지 않은 경우 어떤 스크립트를 사용하여 빠르게 수행 할 수 있습니까?


답변:


32

에서 guifont옵션을 설정 하십시오 .gvimrc. 참조 :help guifont:help setting-guifont.

구체적으로, set guifont=Consolas:h11Windows에서 gvim에서 11 포인트 Consolas를 사용 하는 것과 같은 작업을 수행 할 수 있습니다 . 굵은 체 :와 같이 사용할 수있는 몇 가지 다른 옵션 (각각을으로 구분 )이 :b있지만 일부는 특정 플랫폼에서만 사용할 수 있습니다.

:h입증 된 바와 같이 글꼴 크기를 설정하는 옵션은 아마도 가장 유용하고, 하나는 특히 변화에 관한 크기 가 요청한대로 글꼴을.


6
있습니다 name:size구문은 단지 GTK gvim을 사용할 필요를 들어, 윈도우 GVIM에서 작동 name size... ... 다른 플랫폼은 다른 형식을 가질 수있다 (글꼴 이름 및 크기 사이의 공간)
마틴 Tournoij

:hXXMac에서도 작동합니다. GTK에 대한 좋은 지적.

set guifont=? 아닙니다 set gfn=?
피터 Mortensen

2
@PeterMortensen 두 작품; 나는 더 읽기 쉬운 양식을 찾기 때문에 더 긴 양식을 선호하며 특히 더 긴 양식을 답변에 사용하는 경향이 있습니다.

Windows의 파일 이름 (일반적인 OS 선택)은 실제로 다음과 같습니다. MS-DOS 및 Win32의 경우 : $ VIM \ _gvimrc 또는 제 경우에는 해당 파일이 존재하지 않아서 그런 식으로 만들어야했습니다.
wolfdawn

29

실행중인 GVim 인스턴스에서 글꼴 크기를 간단히 변경하려면 다음을 입력하십시오.

:set guifont=*

글꼴 크기를 설정하고 원하는 경우 새 글꼴을 선택할 수있는 창이 나타납니다. 그런 다음 Vim에 ~/.gvimrc변경 사항을 영구적으로 적용하기 위해 추가해야 할 줄을 인쇄하도록 요청할 수 있습니다 .

:set guifont?

상태 표시 줄에 다음과 같은 것을 생성합니다.

guifont=Hasklig-Light:h16

이를 유지 하려면 접두사 set를 추가하십시오 ~/.gvimrc.


13

.vimrc에는 다음과 같이 글꼴을 변경하지 않고 글꼴 크기를 빠르게 변경할 수 있습니다. Windows 및 GTK에서 작동합니다. 다른 GUI를 테스트하지 않았습니다. 나는 원래 다른 사람으로부터 그것을 복사했다고 확신하지만 그것이 rc 파일에 너무 오래 있었기 때문에 그것이 어디에서 왔는지 기억하지 못합니다.

if has("unix")
    function! FontSizePlus ()
      let l:gf_size_whole = matchstr(&guifont, '\( \)\@<=\d\+$')
      let l:gf_size_whole = l:gf_size_whole + 1
      let l:new_font_size = ' '.l:gf_size_whole
      let &guifont = substitute(&guifont, ' \d\+$', l:new_font_size, '')
    endfunction

    function! FontSizeMinus ()
      let l:gf_size_whole = matchstr(&guifont, '\( \)\@<=\d\+$')
      let l:gf_size_whole = l:gf_size_whole - 1
      let l:new_font_size = ' '.l:gf_size_whole
      let &guifont = substitute(&guifont, ' \d\+$', l:new_font_size, '')
    endfunction
else
    function! FontSizePlus ()
      let l:gf_size_whole = matchstr(&guifont, '\(:h\)\@<=\d\+$')
      let l:gf_size_whole = l:gf_size_whole + 1
      let l:new_font_size = ':h'.l:gf_size_whole
      let &guifont = substitute(&guifont, ':h\d\+$', l:new_font_size, '')
    endfunction

    function! FontSizeMinus ()
      let l:gf_size_whole = matchstr(&guifont, '\(:h\)\@<=\d\+$')
      let l:gf_size_whole = l:gf_size_whole - 1
      let l:new_font_size = ':h'.l:gf_size_whole
      let &guifont = substitute(&guifont, ':h\d\+$', l:new_font_size, '')
    endfunction
endif


if has("gui_running")
    nmap <S-F12> :call FontSizeMinus()<CR>
    nmap <F12> :call FontSizePlus()<CR>
endif

4
에 따르면 이 답변 , has('unix')자주 OSX 시스템의 사실이며, 여기 존에 따르면 , OSX 그래서 사용 ... 윈도우와 같은 형식을 필요로 has('gui_gtk2')더 나은 사용하는 것보다 아마 has('unix').
Martin Tournoij

이것은 Xubuntu (Xfce)에서 작동합니다. : set guifont? 콜론 구분 기호와 선택한 대답이 사용하는 "h"접두어없이 "Monospace Bold 11"과 같은 텍스트를 반환합니다.
NeilG

5

분명히 글꼴 설정을 작성하는 방법은 플랫폼에 따라 다릅니다. 나를 위해 일한 것 (MX Linux 17의 gvim (XFCE 데스크탑과 함께 데비안 기반 Linux 배포판)) :

  • 열린 gvim 인스턴스에서 현재 글꼴 설정을 사용하여 결정 : set guifont?

예: guifont=DejaVu Sans Mono 12

  • 에서 (원하는 크기 수정) 설정을 작성하는이 정보를 사용하여 ~/.gvimrc파일을 백 슬래시 공간을 탈출 하고, 사용하지 않는 :크기 전에 .

예: set guifont=DejaVu\ Sans\ Mono\ 18

  • ~/.gvimrc파일을 저장 한 후 새 gvim 인스턴스는 원하는 새 크기를 사용해야합니다.

이 두 가지 답변이 도움이되었습니다.

이것의 의견뿐만 아니라 :


4

Drew의 답변을 바탕 으로이 설정이 더 효과적이었습니다.

증가 하거나 감소 하여 폰트 크기 \+또는 \-(가정 \하여 리더 임), 및 순환 하여 미리 정의 된 폰트 통하여 cot. 소스 코드와 텍스트 중 어느 것을 사용하는지에 따라이 글꼴들 사이를 자주 교체합니다.

let g:fnt_types = ['SourceCode\ Pro', 'monofur' ]
let g:fnt_sizes = [ 10, 13 ]


let g:fnt_index = 0
let g:fnt_size  = g:fnt_sizes[g:fnt_index]

function! CycleFont()
  let g:fnt_index = (g:fnt_index + 1) % len(g:fnt_types)
  let g:fnt_size  = g:fnt_sizes[g:fnt_index]
  call ResetFont()
endfunction

function! ResetFont ()
  if has('gui_running')
    exe ':set guifont=' . g:fnt_types[g:fnt_index] . '\ ' . string(g:fnt_size)
  endif
endfunction

call ResetFont()

function! FontSizePlus ()
  let g:fnt_size = g:fnt_size + 0.5
  call ResetFont()
endfunction

function! FontSizeMinus ()
  let g:fnt_size = g:fnt_size - 0.5
  call ResetFont()
endfunction

nnoremap <leader>+ :call FontSizePlus()<cr>
nnoremap <leader>- :call FontSizeMinus()<cr>
nnoremap cot :call CycleFont()<cr>

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