Unter Windows 7 ist es nicht möglich, die Standard-Gvim-Schriftart aus dem Gvim-Programm zu speichern. Beim Schließen von Gvim werden alle Schriftarteinstellungen vollständig vergessen. Sie können sie nicht in der _vimrc-Datei festlegen.
Wurde dies in Gvim 7.4 behoben oder bleibt dieser Fehler bestehen? Oder kennt jemand eine bessere Möglichkeit, die Standardschriftart festzulegen? Ursache: Die FixedSys-Schriftart ist schlecht, da sie keine tschechischen Zeichen anzeigen kann. Ich möchte nicht, dass das Menü jedes Mal geändert werden muss, wenn ich eine Datei öffne, die tschechische Zeichen enthält. Vielen Dank.
** BEARBEITEN **
OK, jetzt sehe ich die Dokumentation zum Festlegen der Schriftart durch Ausgeben des Befehls Gvim
:help guifont
Folgendes habe ich gefunden:
For the Win32 GUI *E244* *E245* - takes these options in the font name: hXX - height is XX (points, can be floating-point) wXX - width is XX (points, can be floating-point) b - bold i - italic u - underline s - strikeout cXX - character set XX. Valid charsets are: ANSI, ARABIC, BALTIC, CHINESEBIG5, DEFAULT, EASTEUROPE, GB2312, GREEK, HANGEUL, HEBREW, JOHAB, MAC, OEM, RUSSIAN, SHIFTJIS, SYMBOL, THAI, TURKISH, VIETNAMESE ANSI and BALTIC. Normally you would use "cDEFAULT". Use a ':' to separate the options. - A '_' can be used in the place of a space, so you don't need to use backslashes to escape the spaces. - Examples: :set guifont=courier_new:h12:w5:b:cRUSSIAN :set guifont=Andale_Mono:h7.5:w4.5
So kann ich zum Beispiel von Gvim aus folgendes tun:
:set guifont=Lucida_Console:h12:cDEFAULT
und ich kann den Befehl setzen
set guifont=Lucida_Console:h12:cDEFAULT
in C: \ Users \ JSonderson_gvimrc und diese Schriftfamilie sowie die Schriftgröße und der Zeichensatz werden bei jedem Start von gvim geladen.
Es bleibt jedoch noch eine Frage, wie kommt es, dass UTF-8 nicht auf der Liste der Zeichensätze steht?
Ist der Zeichensatz nicht irgendwie unabhängig von der Schriftart?
Was ist der Unterschied zwischen Zeichensatz und Zeichencodierung?
Wie kann ich den tatsächlichen Zeichensatz anzeigen, der verwendet wird, wenn ich die Einstellung DEFAULT verwende?
Vielen Dank.
Ich habe einfach den folgenden Befehl in meinem _vimrc. Funktioniert das nicht für Sie? `set guifont = Courier_New: h10: cANSI`
garyjohn vor 10 Jahren
1
Sie müssen das zwar in Ihrer _gvimrc-Datei haben, richtig, nicht in der _vimrc?
John Sonderson vor 10 Jahren
0
Nein, ich habe keine _gvimrc-Datei. Dieser Befehl hat funktioniert, als ich ihn dort eingefügt habe, und er scheint noch zu funktionieren, aber ich werde mein Windows-System am Montag noch einmal überprüfen, um sicherzugehen.
garyjohn vor 10 Jahren
1
Vielen Dank. Können Sie mir bitte sagen, warum der Zeichensatzabschnitt dieses Befehls kein UTF-8 enthält und was ist der Unterschied zwischen der Angabe des Zeichensatzes und der Angabe mit: set encoding? Vielen Dank.
John Sonderson vor 10 Jahren
0
Ich habe gerade meinen Vim 7.4.52 überprüft, der unter Windows 7 ausgeführt wird. Die von gvim verwendete Schriftart folgt tatsächlich der `guifont`-Einstellung in meinem ~ / _vimrc. Was die Frage des Zeichensatzes im Vergleich zur Kodierung angeht, denke ich, dass Tony dies ziemlich gut in Ihrem Thread in der vim-Mailingliste beantwortet hat und besser als ich es könnte.
garyjohn vor 10 Jahren
1
Vielen Dank. Aus irgendeinem Grund habe ich den Rest der E-Mail nicht von der vim-Mailingliste erhalten, aber die Antwort ist hier zu finden: https://groups.google.com/forum/#!searchin/vim_use/sonderson/vim_use/X6_l_kIukrI / 2fqvM3aeiWwJ. Ich vermute, dass Foren jetzt unter Google Groups verfügbar sind, beispielsweise: https://groups.google.com/forum/#!forum/vim_use
John Sonderson vor 10 Jahren
0
Um Tonys Antwort zu zitieren: Die Einstellung 'guifont' weist eine Reihe verschiedener inkompatibler Einstellungen auf. Wenn Sie Vim nur unter Windows verwenden, ist dies für Sie nicht von Belang, aber es gibt mindestens zwei sehr unterschiedliche Formate, die derzeit unter Linux verwendet werden, und es gab früher eines. Siehe http://vim.wikia.com/wiki/Setting_the_font_in_the_GUI
John Sonderson vor 10 Jahren
0
Im Grunde ist diese Einstellung nicht kompatibel. Wahrscheinlich sollte vim die Syntax dieses Befehls bereinigen, da wir bereits den Befehl ": encoding" haben.
John Sonderson vor 10 Jahren
0
Ich folge dir nicht. Ist mit was nicht kompatibel? Die verschiedenen "guifont" -Einstellungen sind nicht miteinander kompatibel, da verschiedene Fenstermanager über inkompatible Methoden zum Festlegen von Schriftarten verfügen und normalerweise unterschiedliche Schriftarten zur Verfügung stehen. Dies ist etwas, das Vim nicht "reparieren" kann, ohne noch eine andere Schriftartspezifikationssprache vorzulegen. Die Lösung, die gut zu funktionieren scheint, ist die Verwendung von "if" ("...") "in Ihrem vimrc, um" guifont "abhängig von Ihrer GUI-Umgebung auszuwählen. Ich bin mir nicht sicher, was Sie mit "inkompatibel" meinen.
garyjohn vor 10 Jahren
0
OK, ich beziehe mich nur auf die Tatsache, dass Gvim an zwei Stellen Funktionalität zu bieten scheint, anstatt eine für die Einstellung der Zeichenkodierung. Beides mit: set guifont = ... (das ein Feld enthält, in dem neben der Schriftart auch die Codierung angegeben ist, und ein separates: set econding = ..., das auch die Codierung festlegt. Ich kann es nicht scheinen Den Unterschied zwischen diesen beiden Arten der Einstellung der Schrift herausfinden: Warum kann vim die Kodierung an zwei verschiedenen Stellen einstellen (dh mit zwei verschiedenen Befehlen) und nicht mit einem Befehl?
John Sonderson vor 10 Jahren
0
Warum ist gvim mit zwei Stellen ausgestattet, an denen die Kodierung angegeben werden kann, und nicht mit einer Stelle, die für mich mehr Sinn macht? Vielen Dank.
John Sonderson vor 10 Jahren
0
Wo sehen Sie die Kodierung im GUI-Menü "Schrift"? Sowohl unter Windows als auch unter Linux sehe ich in diesem Menü nur Einstellungen für `Font`,` Font Style`, `Size` und (nur unter Windows)` Script`. Kodierung und Schrift sind unterschiedliche Konzepte. Die Kodierung gibt die Darstellung von Zeichen im Speicher oder in einer Datei an. Schriftart legt fest, wie Zeichen auf einer Anzeige oder Seite aussehen. Um beispielsweise mit gvim eine Datei anzuzeigen, die den griechischen Buchstaben "mu" enthält, muss das Bitmuster, das dieses Zeichen in der Datei darstellt, eine Codierung verwenden, die das Zeichen "mu" enthält. Um dieses Zeichen auf Ihrer Anzeige zu sehen, müssen Sie eine Schrift verwenden ...
garyjohn vor 10 Jahren
1
... das eine Glyphe oder ein Bild für diesen Charakter enthält.
garyjohn vor 10 Jahren
1
Entschuldigung wegen der späten Antwort. Natürlich kann ein Zeichen aus einer Kodierung mit verschiedenen Schriftarten gerendert werden. Es stimmt, es gibt keine Kodierungsoption im GUI-Menü "Schriftart", aber es gibt eine Skriptoption, die keinen Sinn macht. Was ist der Unterschied zwischen Kodierung und Skript? Und die Kodierung für Russisch kodiert Russisch und die Kodierung für Koreanisch kodiert Koreanisch. Daher sollte das Skript überflüssig sein. Dies ist der Teil, den ich verwirrend finde.
John Sonderson vor 10 Jahren
0
Also, if you issue :help guifont in VIM you will see that it says cXX - character set XX. Valid charsets are: ANSI, ARABIC, ALTIC, CHINESEBIG5, DEFAULT, EASTEUROPE, ... This "character set" should correspond to what you descibe as the Script option in the GUI.
John Sonderson vor 10 Jahren
0
Ich weiß nicht, was diese Skripteinstellung macht. Es ist nicht im Linux-Schriftarten-Dialog vorhanden, daher handelt es sich wahrscheinlich um eine Windows-Sache, und ich weiß nichts über die Details von Windows-Schriftarten.
garyjohn vor 10 Jahren
0
2 Antworten auf die Frage
0
StahlRat
Ich verwende GVIM 8.0.69. Es kommt mit dem, vimrc_example.vimdas ich bearbeitet habe, um folgende Zeile hinzuzufügen:
set guifont=Consolas:h10.
:saveas _guirc speichert die Konfigurationsdatei im Standardordner GVIM.
Neu gestartet. Ich habe meine neue Standardschriftart.
0
Ravi G.
Unter Windows 10 musste ich diese Zeile zu _vimrc im Benutzerverzeichnis hinzufügen, um die Einstellung der Schriftart dauerhaft zu machen: (Standardeinstellung ist Consolas Größe 10).