Wie können Windows-Terminals chinesische und englische Schriftzeichen im Verhältnis 1:2 in der Breite umwandeln?

Wie können Windows-Terminals chinesische und englische Schriftzeichen im Verhältnis 1:2 in der Breite umwandeln?

ipconfigAusgabe in CMD:

Bildbeschreibung hier eingeben

ipconfigAusgabe in PowerShell:

Bildbeschreibung hier eingeben

ipconfigAusgabe in Git Bash:

Bildbeschreibung hier eingeben

Beachten Sie, dass die Breite der chinesischen und englischen Zeichen immer 1:2 beträgt, unabhängig von der verwendeten Schriftfamilie.und als Ergebnis sind die Punkte ausgerichtet.

Ich war darüber erstaunt, da die Ausgabe in einem gewöhnlichen Texteditor, beispielsweise VSCode, folgendermaßen aussieht (die Schriftfamilie ist Consolas, die nichtproportional ist):

Bildbeschreibung hier eingeben

Wie du sehen kannst,die Punkte sind nicht ausgerichtet, und im Gegensatz zu den oben aufgeführten Terminals müssen Sie einige spezielle Schriftfamilien finden (z. B.Sarasa-Gothic), um das Breitenverhältnis auf 1:2 zu bringen.

Meine Frage ist also:Wie können diese Windows-Terminals chinesische und englische Zeichen unabhängig von der Schriftfamilie im Verhältnis 1:2 breit machen? Und können wir das in Texteditoren erreichen?

Antwort1

Wie können diese Windows-Terminals chinesische und englische Zeichen unabhängig von der Schriftfamilie im Verhältnis 1:2 breit machen?

Die meisten Terminals im Codierstil oder Code-Texteditoren zeigen Zeichen in einem wörtlichen X/Y-Raster an und ignorieren die Schriftart für die Abstandseinstellung vollständig. Die meisten „allgemeinen“ Texteditoren verwenden jedoch nur die in der Schriftart definierte Glyphenbreite, um zu bestimmen, wo das nächste Zeichen platziert werden soll.

Können wir das in Texteditoren erreichen?

Natürlich hängen die Funktionen vom Editor selbst ab, aberMonospacedSchriftarten werden zum Ausrichten von Zeichen in jedem Texteditor verwendet. Beispielsweise verwendet VS Code standardmäßig monospaced Schriftarten (Einstellungen > Texteditor > Schriftarten), sodass die Ausrichtung normalerweise korrekt ist.

Allerdings sind nicht alle monospaced Schriftarten gleich, und ungewöhnliche oder breite Zeichen können Ausnahmen in Schriftarten sein, die Sie normalerweise als monospaced erwarten würden, wieKonsolen. Sie können stattdessen eine Schriftart ausprobieren, die breite Buchstaben als zwei lateinische Buchstaben wiedergibt, z. B. Inconsolata.

Ligaturen (verbundene Zeichen) können im Editor ebenfalls aktiviert werden, und Sie können auf Monospace-Schriftarten ohne Monospace-Ligaturglyphen stoßen.

Antwort2

Dieses Gesprächerklärt alles:

Bildbeschreibung hier eingeben

PS: Obwohl „Inconsolata“ eine großartige Schriftart ist, um dieses Ausrichtungsproblem zu lösen, finde ich, dass die englischen Zeichen dieser Schriftart für mich etwas zu schmal sind, deshalb verwende ich derzeit immer noch „Consolas“.

verwandte Informationen