मैं gVim में फ़ॉन्ट आकार कैसे बदल सकता हूं?


41

क्या देशी कमांड्स का उपयोग करके gVim में फ़ॉन्ट का आकार बदलने का कोई तरीका है?

और यदि नहीं, तो इसे जल्दी से करने के लिए किस स्क्रिप्ट का उपयोग किया जा सकता है?


जवाबों:


32

guifontअपने में विकल्प सेट करें .gvimrc। देखें :help guifontऔर :help setting-guifont

विशेष रूप से, आप कुछ ऐसा कर सकते हैं: set guifont=Consolas:h11विंडोज पर जीवीएम में 11-पॉइंट कंसोल का उपयोग करने के लिए। कुछ अन्य विकल्प हैं जिनका आप उपयोग कर सकते हैं (प्रत्येक को अलग किया जा सकता है :), जैसे :bबोल्ड के लिए, हालाँकि इनमें से कुछ केवल कुछ प्लेटफार्मों पर उपलब्ध हैं।

जैसा कि आपने अनुरोध किया, :hफ़ॉन्ट आकार सेट करने का विकल्प संभवतः सबसे उपयोगी है, और फ़ॉन्ट के आकार को बदलने के लिए विशेष रूप से संबंधित है ।


6
ध्यान दें कि name:sizeसिंटैक्स केवल Windows gVim पर काम करता है, gtk gVim के लिए आपको उपयोग करने की आवश्यकता है name size(फ़ॉन्ट नाम और आकार के बीच एक स्थान) ... अन्य प्लेटफार्मों में अन्य प्रारूप हो सकते हैं ...
मार्टिन टूरनोइज

:hXXमैक पर भी काम करता है। हालांकि GTK के बारे में अच्छी बात है।

set guifont=? नहीं है set gfn=?
पीटर मोर्टेंसन

2
@PeterMortensen दोनों काम; मैं लंबे रूपों को पसंद करता हूं क्योंकि मैं उन्हें अधिक पठनीय लगता हूं, और विशेष रूप से उत्तर में लंबे लोगों का उपयोग करता हूं।

ध्यान दें कि विंडोज में फ़ाइल का नाम (एक सामान्य OS विकल्प) वास्तव में है: MS-DOS और Win32 के लिए: $ VIM \ _gvimrc या मेरे मामले में वह फ़ाइल मौजूद नहीं थी और मुझे इसे इस तरह से बनाने की आवश्यकता थी।
वुल्फडॉन

29

यदि आप बस चल रहे GVim उदाहरण में फ़ॉन्ट आकार बदलना चाहते हैं, तो टाइप करें:

:set guifont=*

एक विंडो पॉप अप करना चाहिए जिससे आप फ़ॉन्ट आकार सेट कर सकें और साथ ही यदि वांछित हो तो एक नया फ़ॉन्ट चुन सकें। फिर आप विम को उस लाइन को प्रिंट करने के लिए कह सकते ~/.gvimrcहैं, जिसे परिवर्तन को स्थायी बनाने के लिए आपको अपने साथ जोड़ने की आवश्यकता होगी :

:set guifont?

स्थिति रेखा में निम्नलिखित जैसे कुछ का उत्पादन करता है:

guifont=Hasklig-Light:h16

कि जोड़े उपसर्ग के साथ setअपने को ~/.gvimrcलागू करने के लिए।


13

मैं अपने .vimrc में निम्नलिखित है फॉन्ट का आकार बदलने के लिए फॉन्ट को बदले बिना। विंडोज और जीटीके पर काम करता है। मैंने अन्य GUI का परीक्षण नहीं किया है। मुझे यकीन है कि मैंने मूल रूप से इसे किसी और से कॉपी किया था, लेकिन यह मेरी आरसी फाइल में है, इसलिए मुझे याद नहीं है कि यह कहां से आया है।

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')
मार्टिन टूरनोइज

यह Xubuntu (Xfce) पर काम करता है जहां: guifont सेट करें? बृहदान्त्र विभाजकों के बिना और "एच" उपसर्ग के बिना "मोनोस्पेस बोल्ड 11" जैसा पाठ देता है, जो चयनित उत्तर पर निर्भर करता है।
2

5

जाहिर है, फ़ॉन्ट सेटिंग्स लिखने का तरीका काफी प्लेटफ़ॉर्म-निर्भर है। मेरे लिए क्या काम किया (एमएक्स लिनक्स 17 में गविम, (एक्सएफसीई डेस्कटॉप के साथ डेबियन-आधारित लिनक्स वितरण)):

  • वर्तमान फ़ॉन्ट सेटिंग्स का उपयोग करके एक खुले gvim उदाहरण में निर्धारित करें : set guifont?

उदाहरण: guifont=DejaVu Sans Mono 12

  • इस जानकारी का उपयोग ~/.gvimrcफाइल में सेटिंग्स (आकार को वांछित रूप में संशोधित करने) के लिए करें , बैकस्लैश के साथ रिक्त स्थान से बचकर , और आकार से पहले उपयोग न करें:

उदाहरण: set guifont=DejaVu\ Sans\ Mono\ 18

  • ~/.gvimrcफ़ाइल को सहेजने के बाद , gvim के नए उदाहरणों को नए वांछित आकार का उपयोग करना चाहिए।

इन दो जवाबों ने मेरी मदद की:

साथ ही इस एक की टिप्पणी:


4

ड्रू के जवाब के आधार पर इस सेटअप ने मेरे लिए बेहतर काम किया।

यह फॉन्ट-साइज़ का उपयोग बढ़ाता या घटता है ( \+या \-मान लें \कि आपका लीडर है), और पूर्वनिर्धारित फोंट का उपयोग करके चक्र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>

2

आप इस प्लगइन की कोशिश कर सकते हैं: vim-fontzoom

map <m-o> :Fontzoom!<cr>
map <m--> <Plug>(fontzoom-smaller)
map <m-=> <Plug>(fontzoom-larger)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.