Playground
Type into the panel. Everything is live, and the settings follow you into the other sections.
Ligatures
The ligature build rewrites operator sequences through the OpenType calt feature.
Every sequence below was verified against the shipped binary, not copied from a list. The raw
characters are printed under each one.
calt is registered under DFLT, latn, cyrl,
grek, zinh and zyyy. There is no hang
record, but operators sit in their own run, so ligatures still fire on a line that also
contains Korean.
Telling characters apart
The shapes that cost you the most debugging time, side by side. Drag the size slider down to 8px, the range the hinting was tuned for, and they should still separate cleanly.
| Digit | Latin | Hangul | Symbol | ||
|---|---|---|---|---|---|
| 1-shaped | Your sans-serif | 1 | l I | ㅣ | | |
| Your monospace | 1 | l I | ㅣ | | | |
| D2Coding | 1 | l I | ㅣ | | | |
| 0-shaped | Your sans-serif | 0 | O o | ㅇ | |
| Your monospace | 0 | O o | ㅇ | ||
| D2Coding | 0 | O o | ㅇ | ||
| Code marks | Your sans-serif | ( ) { } [ ] ' " ` ; : , . - _ = ~ / | |||
| Your monospace | ( ) { } [ ] ' " ` ; : , . - _ = ~ / | ||||
| D2Coding | ( ) { } [ ] ' " ` ; : , . - _ = ~ / | ||||
sans-serif and
monospace, so this is a comparison against the fonts you actually read code in.
The third row is D2Coding, served as WOFF2.
Hangul on the same grid
A Hangul syllable is exactly twice the advance width of a Latin character. That is what keeps Korean comments, tables and box drawing from tearing your columns apart. Turn on the grid to see the cells.
Coverage is all 11,172 Hangul syllables, Latin and 332 extended characters, 31 control pictures, and 4,620 CJK Unified Ideographs. The README used to say Hanja was missing and would fall back to another font; it never was. Check any character you like against the real cmap below.
// D2 Coding 폰트는 한글과도 잘 어울립니다.
public static void main(String[] args) {
System.out.println("반갑다. D2 Coding 폰트!");
}
Verify a rendering problem
Most reports about a coding typeface come down to “this looks wrong at one particular size”. These three tools exist so a report can carry evidence instead of a description.
Size ladder
The same string at every size from 8px to 24px. Find the size that misbehaves and quote it.
Coverage check
Paste anything. Characters the font does not contain are listed here, so you know whether you are looking at a D2Coding glyph or a fallback.
Report template
Your current settings and environment, formatted for a GitHub issue. Copy it into the report so nobody has to ask what you were looking at.
Open a new issue