web-dev-qa-db-fra.com

Comment définir la taille de police par défaut dans Vim?

J'essaie de configurer les paramètres par défaut pour mon interface graphique avec Vim. J'ai déjà fait des recherches sur le Web, mais toutes les solutions que j'ai trouvées et essayées ne fonctionnaient pas.

Voici certaines des choses que j'ai essayées (dans le fichier .vimrc):

set guifont = Monaco:h20
set guifont=Monospace 20

En fait, je me fiche de la police de Monaco.

85
Moebius

Pour le premier supprimer les espaces. Les espaces blancs sont importants pour la commande set.

set guifont=Monaco:h20

Pour le second, cela devrait être (le h spécifie la hauteur)

set guifont=Monospace:h20

Ma recommandation pour définir la police est de le faire (si votre version le supporte)

set guifont=*

Cela fera apparaître un menu qui vous permet de sélectionner la police. Après ce type

set guifont?

Pour montrer ce que le guifont actuel est défini. Après cela, copiez cette ligne dans votre vimrc ou gvimrc. S'il y a des espaces dans la police, ajoutez un \ pour lui échapper.

set guifont=Monospace\ 20
190
FDinoff

Essayez un \<Space> avant 12, comme suit:

:set guifont=Monospace\ 12
13
pascal

Ajoutez Regular à la syntaxe et utilisez gfn:

set gfn = Monospace\Regular: h13

1
Farsheed

Je croise le même problème que j'ai mis le code suivant dans le dossier ~/.gvimrc et cela fonctionne.

set guifont=Monaco:h20
0
Fan Bi

Les autres réponses correspondent à ce que vous avez demandé, mais au cas où cela serait utile à quelqu'un d'autre, voici comment définir la police de manière conditionnelle à partir de l'écran DPI (Windows uniquement):

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
0
9999years