Legen Sie die MacVim-Standardschriftart fest

87

Wie lege ich die Standardschriftart für MacVim fest?

Ich habe versucht, die folgende Zeile hinzuzufügen

set guifont = Monaco:h12

zu einer der folgenden Dateien:

~/.vimrc
~/.gvimrc
~/Applications/MacVim/MacVim.app/Contents/Resources/vim/vimrc
~/Applications/MacVim/MacVim.app/Contents/Resources/vim/gvimrc
~/Applications/MacVim/MacVim.app/Contents/Resources/vim/.vimrc
~/Applications/MacVim/MacVim.app/Contents/Resources/vim/.gvimrc

Ich habe MacVim neu gestartet, aber die Standardschriftart wird immer noch nicht festgelegt. Was habe ich vermisst?

UPDATE: Ich kann den set guifontBefehl zur Laufzeit ausgeben und er funktioniert einwandfrei. Es scheint es einfach nicht aus meinen Startdateien zu lesen.

Kit
quelle
Ich verwende eine andere Schriftart als die Standardschrift mit dem obigen Befehl ~/.vimrcund sie funktioniert einwandfrei. Vielleicht möchten Sie überprüfen, ob die bestimmte Schriftart vorhanden ist ...
abcd
@yoda Ich habe es tatsächlich zur set guifont=Monaco:h12Laufzeit versucht und es funktioniert gut. Ich bin mir nicht sicher, warum es die von mir erwähnten Startdateien nicht liest.
Kit
Sie können verwenden vim -D, um den Debug-Modus aufzurufen und dann stepüber vim-Startskripte sehen, was los ist.
user688996
5
@kit: Der Code in Ihrem Beitrag enthält Leerzeichen vor und nach dem Gleichheitszeichen in Ihrer set guifontErklärung. Wenn es in Ihrem vimrc wirklich so ist, nehmen Sie die Leerzeichen heraus, sie sind nicht gültig um Gleichheitszeichen in festgelegten Anweisungen (eigentlich denke ich, dass ein Leerzeichen vor dem Gleichheitszeichen in Ordnung ist, aber nicht danach).
Herbert Sitz

Antworten:

133

Legen Sie dies in .gvimrc:

set guifont=Monaco:h12

Beachten Sie das Fehlen von Leerzeichen um das Gleichheitszeichen.

Kit
quelle
3
Sie können dies auch einfach in Ihre .vimrcDatei einfügen.
Hustlion
Ich habe Monaco: h12 und das Tortenfarbschema verwendet, und es funktioniert gut.
Craig S. Anderson
1
Nachdem dies hinzugefügt wurde, ~/.vimrcgibt es keine Auswirkung auf die tatsächlich verwendete Schriftartmacvim
javadba
85

Wenn Sie eine Schriftart mit Leerzeichen im Namen festlegen müssen, verwenden Sie Backslashes in Ihrem .gvimrc:

set guifont=Fira\ Code:h12
New Alexandria
quelle
1
Verwenden Sie diese Schriftart allgemein zum Programmieren?
8
Ich schwöre es, ja. Zusätzlich zu einem "Retina-Display" ist meine Augenbelastung auf fast Null gesunken
New Alexandria
Du meinst "Backslashes"?
Memming
1
Source Code Proist wunderbar! Empfehlen Sie jedoch Source Code Pro Lightüber die reguläre Version.
Xji
1
Dies ist besonders dann hilfreich, wenn Sie Powerline-Schriftarten einrichten müssen.
Junhan
22

Die vollständigste Antwort sollte folgende sein:

set guifont=Source\ Code\ Pro\ ExtraLight:h18

Ich sah mich um und in jeder Antwort und jedem Tutorial, die ich fand, wurde nicht angegeben, wie die Schriftart eingestellt werden soll.

Wenn Sie nach dem manuellen Festlegen Ihrer Schriftart im Fenster "Schriftart" nicht genau wissen, was Sie eingeben sollen, geben Sie Folgendes ein:

:set guifont

Dies zeigt Ihnen den genauen Zeichenfolgenwert, den Sie in Ihre .vimrc-Datei einfügen müssen, einschließlich der Schriftart.

Benjamin
quelle
2
Ich stimme zu, diese Antwort ist sehr hilfreich, insbesondere der Bestimmungsschritt zum Abrufen der Guifont-Zeichenfolge nach der manuellen Einrichtung. Danke dir.
WhozCraig
5

Fügen Sie meine Schriftarteneinstellung hinzu.

" - font type and size setting.
if has('win32')
    set guifont=Consolas:h12   " Win32.
elseif has('gui_macvim')
    set guifont=Monaco:h14     " OSX.
else
    set guifont=Monospace\ 12  " Linux.
endif
Chu-Siang Lai
quelle
4

Wenn Sie einen Mac verwenden, fügen Sie folgende Zeilen hinzu ~/.vimrc:

set gfn=Monaco:h13
set linespace=2
Farsheed
quelle
2

Um nicht nur mit englischen Zeichen umzugehen, können Sie dies in Ihre .vimrcDatei einfügen ( guifontwidebefasst sich mit chinesischen Zeichen):

if has("gui_running")
    set guifont=Consolas:h14
    set guifontwide=Hiragino\ Sans\ GB
    set linespace=2
endif
Hustlion
quelle
Ich vermute wide, jedes Zeichen ist mit mehr als 8 Bit codiert, daher ist es breit? Oder erscheint es tatsächlich breit?
Kit