[vim] How do I set the default font size in Vim?

I am trying to configure the default settings for my GUI with Vim. I already made research on the web, but all the solutions I found and tried did not work.

Here are some of the things I tried (in the .vimrc file):

set guifont = Monaco:h20
set guifont=Monospace 20

Actually I don't care about the Monaco font.

This question is related to vim fonts

The answer is


Try a \<Space> before 12, like so:

:set guifont=Monospace\ 12

The other answers are what you asked about, but in case it’s useful to anyone else, here’s how to set the font conditionally from the screen DPI (Windows only):

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

Add Regular to syntax and use gfn:

set gfn= Monospace\ Regular:h13


I cross over the same problem I put the following code in the folder ~/.gvimrc and it works.

set guifont=Monaco:h20