Vim'de varsayılan yazı tipi boyutunu nasıl ayarlarım?


95

Vim ile GUI için varsayılan ayarları yapılandırmaya çalışıyorum. Zaten web üzerinde araştırma yaptım, ancak bulduğum ve denediğim tüm çözümler işe yaramadı.

İşte denediğim şeylerden bazıları (.vimrc dosyasında):

set guifont = Monaco:h20
set guifont=Monospace 20

Aslında Monaco yazı tipi umrumda değil.


İlki doğru görünüyor. Vim'i yeniden başlattın mı? Ayrıca, yazı tipi makinenizde var mı?
Rob

4
Vim, çok kapsamlı bir belgeyle birlikte gelir . Web'de arama yapmayın: :helponun yerine kullanın; daha hızlı ve daha yetkili. Sizin durumunuzda, basit bir sistem :help font<C-d>bulmanız :help guifontve set guifontdoğru bir şekilde nasıl yapacağınızı öğrenmeniz için yeterli olurdu .
romainl

Yanıtlar:


207

İlki için boşlukları kaldırın. Set komutu için boşluk önemlidir.

set guifont=Monaco:h20

İkincisi için olması gerekir (h yüksekliği belirtir)

set guifont=Monospace:h20

Yazı tipini ayarlamak için önerim yapmaktır (sürümünüz destekliyorsa)

set guifont=*

Bu, yazı tipini seçmenize izin veren bir menü açacaktır. Yazı tipini seçtikten sonra yazın

set guifont?

Mevcut guifontun neye ayarlandığını göstermek için. Bundan sonra bu satırı vimrc veya gvimrc'nize kopyalayın. Yazı tipinde boşluk varsa \, boşluktan çıkmak için a ekleyin .

set guifont=Monospace\ 20

.Vimrc dosyamda şu komutu denedim: set guifont = h18 || set guifont = Monospace: h18 || guifont = 18 olarak ayarlayın ve eğer bazıları polisi büyütürse, bir sorun vardır: Her karakter arasındaki boşluk çok geniştir. Neden ?
Moebius

Karakterler arasındaki geniş boşluğun mono olmayan yazı tipinden kaynaklandığını anladım. Yalnızca adının içinde mono olan yazı tipleri geniş alan olmadan görüntülenecektir.
Moebius

Vimrc nerede bulunur? Vim'i win8.1'e yükledikten sonra başlangıç ​​menüsünde bulamadım
Lei Yang

1
@LeiYang Eğer :versionvim yazarsanız, vim'in dosyayı aradığı yerleri listelemelidir. Bu gibi bir şey olmalıdır ~/.vimrc, ~/.vim/vimrc, $HOME/_vimrc.
FDinoff

Bunu sorarken kendimi aptal gibi hissediyorum, ama bu terminalde vim üzerinde çalışıyor mu (yani, gvim değil)?
0xc0de

16

Daha \<Space>önce deneyin 12, şöyle:

:set guifont=Monospace\ 12

1

Aynı problemin üzerinden geçiyorum, aşağıdaki kodu klasöre koyuyorum ~/.gvimrcve çalışıyor.

set guifont=Monaco:h20

0

Sözdizimine Normal ekleyin ve kullanın gfn:

set gfn = Tek Aralıklı \ Normal: h13


0

Diğer yanıtlar, sorduğunuz sorulardır, ancak başkaları için yararlı olması durumunda, yazı tipini ekran DPI'dan koşullu olarak nasıl ayarlayacağınız aşağıda açıklanmıştır (yalnızca Windows):

set guifont=default
if has('windows')
    "get dpi, strip out utf-16 garbage and new lines
    "system() converts 0x00 to 0x01 for 'platform independence'
    "should return something like 'PixelsPerXLogicalInch=192'
    "get the part from the = to the end of the line (eg '=192') and strip
    "the first character
    "and convert to a number
    let dpi = str2nr(strpart(matchstr(substitute(
        \system('wmic desktopmonitor get PixelsPerXLogicalInch /value'),
        \'\%x01\|\%x0a\|\%x0a\|\%xff\|\%xfe', '', 'g'),
        \'=.*$'), 1))
    if dpi > 100
        set guifont=high_dpi_font
    endif
endif

@ Çalıştırdığınızda ne olur 576i wmic desktopmonitor get PixelsPerXLogicalInch /valueiçinde cmd.exe?
9999years
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.