Das ist eine Frage, die hier eigentlich längst hätte auftauchen können, aber überraschenderweise anscheinend noch nie gestellt wurde, daher frage ich einfach mal.
Welche Schriftart verwendet ihr beim Coden? Und welche Monospace-Schrift nutzt ihr im Webbrowser?
Ich selbst verwende derzeit D2Coding.
Meine Kriterien bei der Auswahl einer Programmierschrift sind folgende:
- Sie sollte eine Monospace-Schrift im Sans-Serif-Stil sein.
- Sie sollte Koreanisch unterstützen, und auch bei der Verwendung von Koreanisch darf die feste Zeichenbreite nicht kaputtgehen.
- Verwechslungsanfällige Zeichen wie
O,o,0,l,iusw. müssen klar unterscheidbar sein. - Das Symbol
\(Backslash) darf nicht als Währungssymbol₩(koreanischer Won) angezeigt werden. - Sie sollte Powerline-Symbole für die Verwendung im Terminal unterstützen.
- Außerdem sollte sie einfach dem eigenen Geschmack entsprechen.
Das Problem ist, dass es überraschend selten ist, all diese Bedingungen gleichzeitig zu erfüllen. Vor allem Schriftarten, die auch bei der Verwendung von Koreanisch ihre feste Zeichenbreite beibehalten, scheinen wirklich selten zu sein. Deshalb habe ich mir auch Fonts angesehen, die koreanische Schriftarten mit bekannten Monospace-Schriften kombinieren, etwa Sarasa Gothic oder Monoplex KR, aber bisher habe ich noch nichts gefunden, das mir besser gefällt als das bisher genutzte D2Coding.
Als ich vor Kurzem Windows neu installiert und dabei meine Schriftarteinstellungen eingerichtet habe, kam mir plötzlich die Frage, welche Fonts andere Leute zum Coden verwenden. Besonders im Hinblick auf die Unterstützung von Koreanisch würde ich gern wissen, ob es vielleicht empfehlenswerte Font-Kombinationen gibt.
55 Kommentare
RobotoMono Nerd Font
Ich nutze eine Mischung aus BonMono (Source Han Mono) und Nanum Gothic Coding.
Ich habe jahrelang
source code pro for powerlineverwendet,bin aber hier im Kommentar-Thread auf
sf monogestoßen und sofort umgestiegen.In
vscodeunddatagripsiehtsf monorichtig gut aus.Apple, das sich schon seit Langem fast verdächtig intensiv(?) für Typografie interessiert, hat mit San Francisco eigens eine Schrift für die UI entwickelt, daher ist sie wohl gut lesbar und hübsch.
Hier hat mir jemand Monoplex KR empfohlen. Deshalb habe ich das, was ich eine Zeit lang zum Coden mit Jetbrains Mono und für Markdown mit Sarasa Fixed K genutzt hatte, auf Monoplex KR als eine einzige Schrift für Coding und Markdown umgestellt.
Ich nutze Windows 10 und VSCode; mein erster Eindruck ist, dass bei gleicher Schriftgröße die tatsächlich sichtbare Größe deutlich kleiner geworden ist und Koreanisch etwas verwaschen wirkt.
Die Lesbarkeit ist aber nicht so beeinträchtigt, dass es ein Problem wäre, deshalb möchte ich Monoplex KR eine Weile weiterverwenden!
Falls Schriftzeichen manchmal etwas verschwommen wirken, kann es in Umgebungen, in denen sich die Schriftstärke auswählen lässt, helfen, die Stärke leicht anzupassen. In VS Code kann man im
settings.json-Datei über die Einstellungeditor.fontWeighteine Zahl zwischen 1 und 1000 eingeben, um die Schriftstärke fein abzustimmen.Ich habe SF Mono verwendet, aber beim Einsatz von Koreanisch hatte ich den Aspekt der Unterstützung von Zeichen mit fester Breite gar nicht bedacht. Je mehr ich darüber nachdenke, desto besser klingt das – ich sollte das einmal ausprobieren.
Bearbeitet ihr die Font-Datei direkt, um sie zu verwenden?
Unter Windows nutze ich Consolas, unter macOS Menlo. Auf dem Mac fand ich SF Mono am besten lesbar, aber ich weiß nicht, ob diese Schrift so lizenziert ist, dass man sie auch außerhalb von Xcode verwenden kann.
Es gibt zwar keine Lizenzierung, um SF Mono als Built-in zu unterstützen, aber man kann es direkt herunterladen und eine benutzerdefinierte Schriftart einrichten. So verwende ich es in WebStorm.
Persönlich finde ich Consolas in mancher Hinsicht nicht besonders gelungen, aber unter den proportionalen Schriften, die unter Windows standardmäßig verfügbar sind, ist es meiner Meinung nach wohl noch die beste. Besonders in Umgebungen, die vom Rest isoliert sind oder in denen ich nicht nach Belieben meine bevorzugte Schrift verwenden kann, nutze ich als Monospace-Schrift grundsätzlich Consolas.
Ich verwende für Englisch Ubuntu Mono derivative Powerline und für Koreanisch D2 Coding.
Bei Englisch gibt es wirklich viele schöne Monospace-Schriftarten, aber für Koreanisch habe ich bisher noch nichts Besseres als D2 Coding gefunden.
Ich habe testweise auch mal bei Ask GN nachgefragt, ob es vielleicht noch andere gute Monospace-Schriftarten mit Hangul-Unterstützung gibt, die ich nicht kenne, aber offenbar gibt es tatsächlich keine. T_T
Ich habe wegen Ligaturen angefangen, Fira Code zu verwenden (da ich viel Haskell code, fand ich Ligaturen eher angenehmer). In letzter Zeit gibt es aber viele Monospace-Schriftarten mit Ligatur-Unterstützung, was ich gut finde. Aus Bequemlichkeit habe ich nichts anderes ausprobiert. Davor habe ich auch lange Source Code Pro verwendet.
Bei einer funktionalen Sprache wie Haskell wäre es wohl besser, die Ligaturfunktion zu verwenden, die Operatorsymbole leichter lesbar macht.
Ihr verwendet offenbar alle einige der guten Fonts, die man mindestens einmal gehört hat. Ich bin irgendwie bei Comic Mono gelandet. Mir gefällt dieses runde Gefühl.
Gab es etwa wirklich eine Festbreiten-Version von Comic Sans?!
…wenn man darüber nachdenkt, ist das neben Gulim so eine Hassliebe, die die Meinungen stark spaltet – da ist es eigentlich nur folgerichtig, dass so etwas auftaucht.
Ich habe verschiedene Fonts ausprobiert; nachdem ich eine Zeit lang Nanum Gothic Coding verwendet hatte, bin ich bei D2Coding geblieben. Meslo scheint auch ganz gut zu sein.
Wenn ich so darüber nachdenke, erinnere ich mich, dass auch Menlo, die Standardschriftart des Terminals unter Mac OS, einen ziemlich guten Eindruck gemacht hat. War das nicht eine Abwandlung von Bitstream Vera Sans?
Ja, das ist eine Variante von Bitstream Vera Sans.
Ja. Meslo ist eine Schriftart, die aus der Menlo-Schriftart konvertiert wurde, damit sie unter Windows verwendet werden kann.
https://github.com/andreberg/Meslo-Font
Wie ich gesehen habe, gibt es auch einen Leitfaden zur Auswahl von Schriftschnitt-Kombinationen für die Schriftart Meslo LG.
https://johngrib.github.io/wiki/coding-font/
Ich verwende FiraMono NF..
Ich kenne dieses Gefühl nur zu gut: Ligaturen möchte man nicht verwenden, aber die Powerline-Symbole hätte man trotzdem gern.
Deshalb nutze ich bei D2Coding auch nicht die Ligature-Variante, sondern einfach nur D2Coding.
Der aktivste Beitrag auf GeekNews!
Ich frage mich fast, warum dieses Thema bisher noch gar nicht aufgekommen ist.
Ich verwende JetBrains Mono und D2Coding.
Manchmal mag ich auch IBM Plex Mono, etwa als Terminal-Schriftart.
Ich mag IBM Plex Mono persönlich nicht besonders, weil es einige polarisierende Eigenschaften hat, aber ich halte es für eine eindrucksvolle Schriftart.
Allerdings scheint JetBrains Mono für eine Schriftart, die erst vor relativ kurzer Zeit erschienen ist, überraschend beliebt zu sein.
Bei JetBrains Mono wirken sogar die Ligaturen irgendwie nicht störend.
Oh, ist das so viel?
Als Hauptschriftart verwende ich Pragmata Pro (https://fsd.it/shop/fonts/pragmatapro/), als zweite Berkeley Mono (https://berkeleygraphics.com/typefaces/berkeley-mono). Da ich in Code fast nie Koreanisch verwende, berücksichtige ich keine koreanische Monospace-Schriftart.
Welche Schriftart verwendet ihr beim Coden?
Mich würde interessieren, ob ihr das Gefühl habt, dass kostenpflichtige Schriftarten ihr Geld wirklich wert sind.
Ich glaube, ich habe Pragmata Pro vor etwas mehr als fünf Jahren gekauft, und es ist eine Schriftart, zu der ich trotz anderer Fonts immer wieder als Hauptschrift zum Coden zurückkehre, sodass sich der Preis für mich gelohnt hat. Berkeley Mono habe ich erst seit ein paar Monaten, daher ist es noch etwas schwierig, sie genau zu beurteilen.
Wenn man dafür umgerechnet etwa 25.000 Won bezahlt und es über fünf Jahre lang nutzt, ist es seinen Preis wirklich mehr als wert.
Berkeley Mono sieht auch ziemlich gut aus, aber ich bin gespannt, wie es sich in der Praxis bewährt und wie es in Zukunft bewertet wird.
Es ist wirklich schade, dass Pretendard keine Unterstützung für Monospace bietet.
Pretendard wurde nun einmal für UI-Design entwickelt, daher lässt sich das wohl nicht vermeiden … trotzdem würde ich mir wünschen, dass es etwas mehr brauchbare monospaced Schriften mit Unterstützung für Koreanisch gäbe.
Ich nutze auch D2Coding...
Wenn es nicht darum geht, eine koreanische Schriftart mit anderen Monospace-Schriftarten zu kombinieren, sondern um eine Monospace-Schriftart, die von Anfang an mit Blick auf die Nutzung des Koreanischen entwickelt wurde, dann scheint es derzeit nur D2Coding zu geben. Zumindest soweit ich weiß.
Ich mische Hack mit D2Coding (für Koreanisch).
Die Konfiguration sieht so aus.
;;
;;; straight is
nill' macro ;; ;;;###autoload (defmacro use-feature (name &rest args) "Likeuse-package', but withstraight-use-package-by-default' disabled." (declare (indent defun))(use-package ,name:straight nil
,@args))
(use-feature emacs
:custom
(face-font-rescale-alist '((".D2Coding." . 1.26)))
:init
(add-to-list 'default-frame-alist '(font . "Hack Nerd Font"))
(set-face-attribute 'default nil
:height 120
:family "Hack Nerd Font") ;; This will early init
(set-fontset-font "fontset-default" '(#x1100 . #xffdc)
'("D2Coding" . "iso10646-1"))
(set-fontset-font "fontset-default" '(#xe0bc . #xf66e)
'("D2Coding" . "iso10646-1")))
Huch, Emacs!
Wenn ich genauer hinsehe, scheint es wohl nicht einfach die Schriftart Hack zu sein, sondern die Schriftart Hack Nerd.
Ach ja, stimmt.
Ich verwende Cascadia Mono von Microsoft und nutze die Ligature-Option nicht. Als Fallback-Font verwende ich D2Coding.
Hast du die Fallback-Einstellungen über eine Bearbeitung der Registry vorgenommen?
Ich nutze die IntelliJ-Reihe, daher ist die Einstellung einfach so möglich.
Aha … ich nutze ebenfalls IntelliJ IDEA und Rider, aber da ich überall immer D2Coding verwende, hatte ich die Konfiguration der Fallback-Optionen schlicht vergessen.
Ich verwende Fira Code.
Fira Code wirkt wie eine Schriftart, die Ligaturen wirklich ernst nimmt.
Ich persönlich mag Ligaturen in Monospace-Schriftarten nicht besonders, aber für Leute, die so etwas mögen, ist das vermutlich eine ziemlich ansprechende Schriftart.
Ich habe auch D2Coding Ligature verwendet und nutze in letzter Zeit Jetbrains Mono, aber feste Zeichenbreite für Koreanisch wird dabei nicht unterstützt.
Monospace-Schriftarten mit CJK-Unterstützung sind wirklich äußerst selten …
Ich persönlich verwende beim Coden einfach JetBrains Mono, weil ich dabei möglichst wenig Koreanisch benutze und mir diese Schrift am besten gefällt.
Ich mag außerdem auch Pixel-Schriften, daher nutze ich gelegentlich NeoDunggeunmo Code ebenfalls.
Zur Information: In meinem Fall sind alle Kommentare im Quellcode unseres Teams auf Koreanisch, daher ist die Unterstützung von Koreanisch in einer Programmierschrift eine unverzichtbare Voraussetzung.
Unter Windows entwickle ich mit VSCode und verwende JetBrains Mono. Bei uns sind Kommentare natürlich ebenfalls auf Koreanisch, aber da wir im Code kein Koreanisch verwenden, scheint das kein großes Problem zu sein.
Beim Bearbeiten von Markdown nutze ich Sarasa Fixed K, weil es wirklich wichtig ist, dass bei gemeinsamem Einsatz von Koreanisch und Englisch eine feste 2:1-Zeichenbreite eingehalten wird.
Eigentlich habe ich
d2codingso lange benutzt, weil es alle Bedingungen erfüllt hat … Auf der Suche nach einer Ersatzschrift nutze ich inzwischenSarasa Fixed K.JetBrains Monogefiel mir auch, weil die englischen Glyphen sehr schön sind.Wenn ich sie wirklich nur für reinen Source Code verwenden würde, hätte ich auch nichts dagegen, eine Schrift zu nehmen, bei der Koreanisch per Fallback dargestellt wird. Aber ich bin irgendwie eigensinnig und möchte Markdown, das Terminal und sogar die Monospace-Schrift im Webbrowser konsequent mit einer einzigen Schrift einheitlich abstimmen … In diesem Sinne erfüllt D2Coding wirklich alle Bedingungen, deshalb nutze ich es bis heute weiter.
Sarasa Gothic verwende ich nicht, weil mir die zugrunde liegende Schrift Iosevka nicht besonders zusagt. Aber auch wenn es nicht ganz so weit geht wie bei der Meslo-LG-Schrift, von der ich in diesem Thread erfahren habe, fand ich es gut, dass die verschiedenen Designkombinationen so fein ausdifferenziert sind, damit man sie dem eigenen Geschmack entsprechend nutzen kann.
Bei NeoDunggeunmo Code habe ich das Gefühl, dass sich einige Zeichen (zum Beispiel
UundV) nicht richtig voneinander unterscheiden lassen, sodass es meiner Meinung nach das dritte der oben genannten Kriterien nicht erfüllt.