Как установить размер шрифта по умолчанию в Vim?


Я пытаюсь настроить параметры по умолчанию для моего GUI с Vim. Я уже проводил исследования в интернете, но все решения, которые я нашел и попробовал, не сработали.

вот некоторые из вещей, которые я пробовал (в .файл vimrc):

set guifont = Monaco:h20
set guifont=Monospace 20

на самом деле я не забочусь о шрифте Монако.

4 80

4 ответа:

для первого удалите пробелы. Пробелы имеют значение для команды set.

set guifont=Monaco:h20

для второго он должен быть (h указывает высоту)

set guifont=Monospace:h20

моя рекомендация для установки шрифта надо делать (если ваша версия поддерживает)

set guifont=*

появится меню, которое позволяет выбрать шрифт. После этого типа

set guifont?

чтобы показать, на что установлен текущий guifont. После этого скопируйте эту строку в свой vimrc или gvimrc. Если в шрифте есть пробелы, добавьте \ чтобы избежать пространства.

set guifont=Monospace\ 20

попробовать \<Space> до 12, например:

:set guifont=Monospace\ 12

добавить регулярный синтаксис и использовать gfn:

набор бойцовских шоу= Моноширинный\ обычный:н13

другие ответы-это то, о чем вы спрашивали, но если это полезно для кого-то еще, вот как установить шрифт условно с экрана DPI (только для 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