This commit is contained in:
Rasmus Andersson 2019-03-31 19:25:31 -07:00
parent 871bcce4e0
commit 4a575d2edc
121 changed files with 222214 additions and 219492 deletions

View file

@ -95,6 +95,16 @@
- "Illegal" - "Illegal"
- "βeta ßeta Busineß" - "βeta ßeta Busineß"
- title: "Stylistic set 3: r curves into round neighbors"
tag: ss03
description:
Lower case r curved into neighboring round shapes for increased
legibility and personality.
samples:
- "Sara"
- "ird"
- "Monroe"
- title: Discretionary ligatures - title: Discretionary ligatures
tag: dlig tag: dlig
description: description:
@ -118,9 +128,10 @@
- {feat: cv03, alt: "Open six", sample: "6"} - {feat: cv03, alt: "Open six", sample: "6"}
- {feat: cv04, alt: "Open nine", sample: "9"} - {feat: cv04, alt: "Open nine", sample: "9"}
- {feat: cv05, alt: "Lower case L with tail", sample: "l ł ƚ ɫ ɬ ŀ ĺ ļ ľ ḷ ḹ ḻ ḽ"} - {feat: cv05, alt: "Lower case L with tail", sample: "l ł ƚ ɫ ɬ ŀ ĺ ļ ľ ḷ ḹ ḻ ḽ"}
- {feat: cv06, alt: "Lower case R with straight tail", sample: "r ɽ ɍ ɼ ŕ ŗ ř ȑ ȓ ṙ ṛ ṝ ṟ"} - {feat: cv06, alt: "Lower case r with curved tail", sample: "r ɽ ɍ ɼ ŕ ŗ ř ȑ ȓ ṙ ṛ ṝ ṟ"}
- {feat: cv07, alt: "Alternate German double-s", sample: "ß"} - {feat: cv07, alt: "Alternate German double-s", sample: "ß"}
- {feat: cv08, alt: "Upper-case i with serif", sample: "I Ï Ḯ Ɨ Ḭ Ì Í Î Ĩ Ī Ĭ Į İ Ǐ Ȉ Ȋ Ỉ Ị Ι Ί Ϊ Ἰ Ἱ Ἲ"} - {feat: cv08, alt: "Upper-case i with serif", sample: "I Ï Ḯ Ɨ Ḭ Ì Í Î Ĩ Ī Ĭ Į İ Ǐ Ȉ Ȋ Ỉ Ị Ι Ί Ϊ Ἰ Ἱ Ἲ"}
- {feat: cv09, alt: "Flat top three", sample: "3"} - {feat: cv09, alt: "Flat top three", sample: "3"}
- {feat: cv10, alt: "Capital G with spur", sample: "G Ǥ Ɠ Ĝ Ğ Ġ Ģ Ǧ Ǵ Ḡ"} - {feat: cv10, alt: "Capital G with spur", sample: "G Ǥ Ɠ Ĝ Ğ Ġ Ģ Ǧ Ǵ Ḡ"}
- {feat: cv11, alt: "Single-storey a", sample: "a á ă ắ ặ ằ ẳ ẵ ǎ â ấ ậ ầ ẩ ẫ ȁ ä ǟ ȧ ạ ǡ à ả ȃ ā ą ẚ å ǻ ḁ ã"}

View file

@ -1,48 +1,48 @@
[ [
{ {
"head": { "head": {
"checkSumAdjustment": 1637560464, "checkSumAdjustment": 494030292,
"created": 3632096805, "created": 3636929098,
"flags": 27, "flags": 27,
"fontDirectionHint": 2, "fontDirectionHint": 2,
"fontRevision": 3.003, "fontRevision": 3.004,
"glyphDataFormat": 0, "glyphDataFormat": 0,
"indexToLocFormat": 0, "indexToLocFormat": 0,
"lowestRecPPEM": 6, "lowestRecPPEM": 6,
"macStyle": [], "macStyle": [],
"macStyle_raw": 0, "macStyle_raw": 0,
"magicNumber": 1594834165, "magicNumber": 1594834165,
"modified": 3632096873, "modified": 3636929189,
"tableVersion": 1.0, "tableVersion": 1.0,
"unitsPerEm": 2816, "unitsPerEm": 2816,
"xMax": 4650, "xMax": 4650,
"xMin": -2080, "xMin": -2080,
"yMax": 3072, "yMax": 3072,
"yMin": -1084 "yMin": -764
}, },
"hhea": { "hhea": {
"advanceWidthMax": 4928, "advanceWidthMax": 4928,
"ascent": 2708, "ascent": 2728,
"caretOffset": 0, "caretOffset": 0,
"caretSlopeRise": 1, "caretSlopeRise": 1,
"caretSlopeRun": 0, "caretSlopeRun": 0,
"descent": -660, "descent": -680,
"lineGap": 0, "lineGap": 0,
"metricDataFormat": 0, "metricDataFormat": 0,
"minLeftSideBearing": -2080, "minLeftSideBearing": -2080,
"minRightSideBearing": -1440, "minRightSideBearing": -1440,
"numberOfHMetrics": 2345, "numberOfHMetrics": 2402,
"tableVersion": 65536, "tableVersion": 65536,
"xMaxExtent": 4650 "xMaxExtent": 4650
}, },
"id": "Inter Regular:2019:20b39288a", "id": "Inter Regular:2019:871bcce4e",
"name": "Inter-Regular", "name": "Inter-Regular",
"names": { "names": {
"copyright": "Copyright 2017-2019 The Inter project authors", "copyright": "Copyright 2019 The Inter project authors",
"designer": "Rasmus Andersson", "designer": "Rasmus Andersson",
"designerURL": "https://rsms.me/", "designerURL": "https://rsms.me/",
"familyName": "Inter", "familyName": "Inter",
"fontId": "Inter Regular:2019:20b39288a", "fontId": "Inter Regular:2019:871bcce4e",
"fullName": "Inter Regular", "fullName": "Inter Regular",
"licenseDescription": "OFL 1.1 (SIL Open Font License, Version 1.1)", "licenseDescription": "OFL 1.1 (SIL Open Font License, Version 1.1)",
"licenseURL": "http://scripts.sil.org/OFL", "licenseURL": "http://scripts.sil.org/OFL",
@ -51,7 +51,7 @@
"subfamilyName": "Regular", "subfamilyName": "Regular",
"trademark": "Inter UI and Inter is a trademark of rsms.", "trademark": "Inter UI and Inter is a trademark of rsms.",
"vendorURL": "https://rsms.me/", "vendorURL": "https://rsms.me/",
"version": "3.3;20b39288a" "version": "Version 3.004;git-871bcce4e"
}, },
"os/2": { "os/2": {
"achVendID": "RSMS", "achVendID": "RSMS",
@ -73,8 +73,8 @@
}, },
"sCapHeight": 2048, "sCapHeight": 2048,
"sFamilyClass": 0, "sFamilyClass": 0,
"sTypoAscender": 2708, "sTypoAscender": 2728,
"sTypoDescender": -660, "sTypoDescender": -680,
"sTypoLineGap": 0, "sTypoLineGap": 0,
"sxHeight": 1536, "sxHeight": 1536,
"ulCodePageRange1": 415, "ulCodePageRange1": 415,
@ -92,20 +92,20 @@
"usWeightClassName": "Normal (Regular)", "usWeightClassName": "Normal (Regular)",
"usWidthClass": 5, "usWidthClass": 5,
"usWidthClassName": "Medium (normal)", "usWidthClassName": "Medium (normal)",
"usWinAscent": 2708, "usWinAscent": 3098,
"usWinDescent": 660, "usWinDescent": 788,
"version": 4, "version": 4,
"xAvgCharWidth": 1682, "xAvgCharWidth": 1697,
"yStrikeoutPosition": 1024, "yStrikeoutPosition": 922,
"yStrikeoutSize": 256, "yStrikeoutSize": 192,
"ySubscriptXOffset": 0, "ySubscriptXOffset": 0,
"ySubscriptXSize": 1536, "ySubscriptXSize": 1830,
"ySubscriptYOffset": 256, "ySubscriptYOffset": 211,
"ySubscriptYSize": 1280, "ySubscriptYSize": 1690,
"ySuperscriptXOffset": 0, "ySuperscriptXOffset": 0,
"ySuperscriptXSize": 1536, "ySuperscriptXSize": 1830,
"ySuperscriptYOffset": 1024, "ySuperscriptYOffset": 986,
"ySuperscriptYSize": 1280 "ySuperscriptYSize": 1690
}, },
"post": { "post": {
"formatType": 3.0, "formatType": 3.0,
@ -118,6 +118,6 @@
"underlinePosition": -464, "underlinePosition": -464,
"underlineThickness": 192 "underlineThickness": 192
}, },
"version": "3.3" "version": "Version"
} }
] ]

View file

@ -5,5 +5,5 @@ assign url_root = "/" %}{% else %}{%
assign url_root = "/inter/" %}{% endif %}{% assign url_root = "/inter/" %}{% endif %}{%
assign font_v = site.data.fontinfo[0].version assign font_v = site.data.fontinfo[0].version
%}<link rel="preload" href="{{url_root}}font-files/Inter-upright.var.woff2?v={{font_v}}" as="font" type="font/woff2" crossorigin="anonymous"> %}<link rel="preload" href="{{url_root}}font-files/Inter-upright.var.woff2?v=3.4" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="{{url_root}}font-files/Inter-italic.var.woff2?v={{font_v}}" as="font" type="font/woff2" crossorigin="anonymous"> <link rel="preload" href="{{url_root}}font-files/Inter-italic.var.woff2?v=3.4" as="font" type="font/woff2" crossorigin="anonymous">

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -118,203 +118,6 @@ grid.faq {
background: var(--yellow); background: var(--yellow);
} }
tablex in, tablex to, tablex out {
display: table-cell;
width: 5%;
white-space: pre;
padding-bottom:0.5em;
}
tablex to::after {
-moz-font-feature-settings: 'calt' 1, 'case' 1;
-ms-font-feature-settings: 'calt' 1, 'case' 1;
-o-font-feature-settings: 'calt' 1, 'case' 1;
-webkit-font-feature-settings: 'calt' 1, 'case' 1;
font-feature-settings: 'calt' 1, 'case' 1;
content: " → ";
color: rgba(0,0,0,0.2);
}
tablex in, tablex out {
color: rgba(0,0,0,0.8);
}
tablex r name {
color: rgba(0,0,0,0.4);
}
tablex in {
-moz-font-feature-settings: 'calt' 0;
-ms-font-feature-settings: 'calt' 0;
-o-font-feature-settings: 'calt' 0;
-webkit-font-feature-settings: 'calt' 0;
font-feature-settings: 'calt' 0;
}
tablex out {
-moz-font-feature-settings: 'calt' 1;
-ms-font-feature-settings: 'calt' 1;
-o-font-feature-settings: 'calt' 1;
-webkit-font-feature-settings: 'calt' 1;
font-feature-settings: 'calt' 1;
}
tablex em {
font-style: inherit;
background: #e4fdef;
color: rgba(0,0,0,1);
}
tablex out.zero {
-moz-font-feature-settings: 'calt' 1, 'zero' 1;
-ms-font-feature-settings: 'calt' 1, 'zero' 1;
-o-font-feature-settings: 'calt' 1, 'zero' 1;
-webkit-font-feature-settings: 'calt' 1, 'zero' 1;
font-feature-settings: 'calt' 1, 'zero' 1;
}
tablex out.tnum {
-moz-font-feature-settings: 'calt' 1, 'tnum' 1;
-ms-font-feature-settings: 'calt' 1, 'tnum' 1;
-o-font-feature-settings: 'calt' 1, 'tnum' 1;
-webkit-font-feature-settings: 'calt' 1, 'tnum' 1;
font-feature-settings: 'calt' 1, 'tnum' 1;
}
tablex out.case {
-moz-font-feature-settings: 'calt' 1, 'case' 1;
-ms-font-feature-settings: 'calt' 1, 'case' 1;
-o-font-feature-settings: 'calt' 1, 'case' 1;
-webkit-font-feature-settings: 'calt' 1, 'case' 1;
font-feature-settings: 'calt' 1, 'case' 1;
}
tablex out.frac {
-moz-font-feature-settings: 'calt' 1, 'frac' 1;
-ms-font-feature-settings: 'calt' 1, 'frac' 1;
-o-font-feature-settings: 'calt' 1, 'frac' 1;
-webkit-font-feature-settings: 'calt' 1, 'frac' 1;
font-feature-settings: 'calt' 1, 'frac' 1;
}
tablex out.numr {
-moz-font-feature-settings: 'calt' 1, 'numr' 1;
-ms-font-feature-settings: 'calt' 1, 'numr' 1;
-o-font-feature-settings: 'calt' 1, 'numr' 1;
-webkit-font-feature-settings: 'calt' 1, 'numr' 1;
font-feature-settings: 'calt' 1, 'numr' 1;
}
tablex out.dnom {
-moz-font-feature-settings: 'calt' 1, 'dnom' 1;
-ms-font-feature-settings: 'calt' 1, 'dnom' 1;
-o-font-feature-settings: 'calt' 1, 'dnom' 1;
-webkit-font-feature-settings: 'calt' 1, 'dnom' 1;
font-feature-settings: 'calt' 1, 'dnom' 1;
}
tablex out.sups {
-moz-font-feature-settings: 'calt' 1, 'sups' 1;
-ms-font-feature-settings: 'calt' 1, 'sups' 1;
-o-font-feature-settings: 'calt' 1, 'sups' 1;
-webkit-font-feature-settings: 'calt' 1, 'sups' 1;
font-feature-settings: 'calt' 1, 'sups' 1;
}
tablex out.subs {
-moz-font-feature-settings: 'calt' 1, 'subs' 1;
-ms-font-feature-settings: 'calt' 1, 'subs' 1;
-o-font-feature-settings: 'calt' 1, 'subs' 1;
-webkit-font-feature-settings: 'calt' 1, 'subs' 1;
font-feature-settings: 'calt' 1, 'subs' 1;
}
tablex out.ss01 {
-moz-font-feature-settings: 'calt' 1, 'ss01' 1;
-ms-font-feature-settings: 'calt' 1, 'ss01' 1;
-o-font-feature-settings: 'calt' 1, 'ss01' 1;
-webkit-font-feature-settings: 'calt' 1, 'ss01' 1;
font-feature-settings: 'calt' 1, 'ss01' 1;
}
tablex out.ss02 {
-moz-font-feature-settings: 'calt' 1, 'ss02' 1;
-ms-font-feature-settings: 'calt' 1, 'ss02' 1;
-o-font-feature-settings: 'calt' 1, 'ss02' 1;
-webkit-font-feature-settings: 'calt' 1, 'ss02' 1;
font-feature-settings: 'calt' 1, 'ss02' 1;
}
tablex out.cpsp {
-moz-font-feature-settings: 'calt' 1, 'cpsp' 1;
-ms-font-feature-settings: 'calt' 1, 'cpsp' 1;
-o-font-feature-settings: 'calt' 1, 'cpsp' 1;
-webkit-font-feature-settings: 'calt' 1, 'cpsp' 1;
font-feature-settings: 'calt' 1, 'cpsp' 1;
}
tablex out.dlig {
-moz-font-feature-settings: 'calt' 1, 'dlig' 1;
-ms-font-feature-settings: 'calt' 1, 'dlig' 1;
-o-font-feature-settings: 'calt' 1, 'dlig' 1;
-webkit-font-feature-settings: 'calt' 1, 'dlig' 1;
font-feature-settings: 'calt' 1, 'dlig' 1;
}
tablex out.cv01 {
-moz-font-feature-settings: 'calt' 1, 'cv01' 1;
-ms-font-feature-settings: 'calt' 1, 'cv01' 1;
-o-font-feature-settings: 'calt' 1, 'cv01' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv01' 1;
font-feature-settings: 'calt' 1, 'cv01' 1;
}
tablex out.cv02 {
-moz-font-feature-settings: 'calt' 1, 'cv02' 1;
-ms-font-feature-settings: 'calt' 1, 'cv02' 1;
-o-font-feature-settings: 'calt' 1, 'cv02' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv02' 1;
font-feature-settings: 'calt' 1, 'cv02' 1;
}
tablex out.cv03 {
-moz-font-feature-settings: 'calt' 1, 'cv03' 1;
-ms-font-feature-settings: 'calt' 1, 'cv03' 1;
-o-font-feature-settings: 'calt' 1, 'cv03' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv03' 1;
font-feature-settings: 'calt' 1, 'cv03' 1;
}
tablex out.cv04 {
-moz-font-feature-settings: 'calt' 1, 'cv04' 1;
-ms-font-feature-settings: 'calt' 1, 'cv04' 1;
-o-font-feature-settings: 'calt' 1, 'cv04' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv04' 1;
font-feature-settings: 'calt' 1, 'cv04' 1;
}
tablex out.cv05 {
-moz-font-feature-settings: 'calt' 1, 'cv05' 1;
-ms-font-feature-settings: 'calt' 1, 'cv05' 1;
-o-font-feature-settings: 'calt' 1, 'cv05' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv05' 1;
font-feature-settings: 'calt' 1, 'cv05' 1;
}
tablex out.cv06 {
-moz-font-feature-settings: 'calt' 1, 'cv06' 1;
-ms-font-feature-settings: 'calt' 1, 'cv06' 1;
-o-font-feature-settings: 'calt' 1, 'cv06' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv06' 1;
font-feature-settings: 'calt' 1, 'cv06' 1;
}
tablex out.cv07 {
-moz-font-feature-settings: 'calt' 1, 'cv07' 1;
-ms-font-feature-settings: 'calt' 1, 'cv07' 1;
-o-font-feature-settings: 'calt' 1, 'cv07' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv07' 1;
font-feature-settings: 'calt' 1, 'cv07' 1;
}
tablex out.cv08 {
-moz-font-feature-settings: 'calt' 1, 'cv08' 1;
-ms-font-feature-settings: 'calt' 1, 'cv08' 1;
-o-font-feature-settings: 'calt' 1, 'cv08' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv08' 1;
font-feature-settings: 'calt' 1, 'cv08' 1;
}
tablex out.cv09 {
-moz-font-feature-settings: 'calt' 1, 'cv09' 1;
-ms-font-feature-settings: 'calt' 1, 'cv09' 1;
-o-font-feature-settings: 'calt' 1, 'cv09' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv09' 1;
font-feature-settings: 'calt' 1, 'cv09' 1;
}
tablex out.cv10 {
-moz-font-feature-settings: 'calt' 1, 'cv10' 1;
-ms-font-feature-settings: 'calt' 1, 'cv10' 1;
-o-font-feature-settings: 'calt' 1, 'cv10' 1;
-webkit-font-feature-settings: 'calt' 1, 'cv10' 1;
font-feature-settings: 'calt' 1, 'cv10' 1;
}
boxes.features box h3 + p { boxes.features box h3 + p {
margin-top:0.5em; margin-top:0.5em;
} }
@ -329,3 +132,7 @@ boxes.features grid .sample em {
background: #e4fdef; background: #e4fdef;
color: black; color: black;
} }
.features box.feat-cvXX {
flex-basis: 100%;
}

View file

@ -214,8 +214,8 @@ html { font-family: 'Inter', sans-serif; }
</p> </p>
<boxes class="features"> <boxes class="features">
{% for f in site.data.feature_samples %} {% for f in site.data.feature_samples %}
<box> <box class="feat-{{f.tag}}" id="features/{{f.tag}}">
<h3>{{f.title}} <q title='OpenType feature ID'>{{f.tag}}</q></h3> <h3><a href="#features/{{f.tag}}">{{f.title}} <q title='OpenType feature ID'>{{f.tag}}</q></a></h3>
{% {%
if f.description %} if f.description %}
@ -402,6 +402,17 @@ html { font-family: 'Inter', sans-serif; }
it public, but what would be the point of that?&nbsp; :—) it public, but what would be the point of that?&nbsp; :—)
</c> </c>
<c>
<h4 id="faq-chrome-vf-bugs"><a href="#faq-chrome-vf-bugs">
The variable font renders poorly in Chrome
</a></h4>
There are some known issues with variable fonts in Chrome, in particular
on Microsoft Windows. You may see an effect similar to "ink bleed" where shapes overlap, for instance where the vertical and horizontal stems meet in "+" or "t".
On Windows you may in addition see incorrectly placed glyphs that looks like poor kerning (spacing between characters) and even some glyphs being lower or taller than other glyphs.
It is recommended to avoid using variable fonts on Chrome.
See the <a href="https://bugs.chromium.org/p/chromium/issues/list?can=2&q=variable+component%3ABlink%3EFonts">Chromium bug tracker</a> for a list of variable-font related issues.
</c>
<c> <c>
<h4 id="faq-contact"><a href="#faq-contact"> <h4 id="faq-contact"><a href="#faq-contact">
I've made a cool thing that uses Inter, can I share it with you?<br> I've made a cool thing that uses Inter, can I share it with you?<br>

File diff suppressed because it is too large Load diff

View file

@ -163,11 +163,11 @@ Ambiguation: (should not be fractions)
samples.set('Feature: calt', ` samples.set('Feature: calt', `
(m) (M) (6) [m] [M] [6] {m} {M} {6} (m) (M) (6) [m] [M] [6] {m} {M} {6}
m@n M@N m@n M@N
3×5 ×9 8× 3x4 x9 2x 3×5 3 × 5 ×9 8× 3x4 x9 2x
35 5 8 3+5 +5 3+ 35 3 5 5 8 3+5 +5 3+
3÷5 ÷5 8÷ 3±5 ±5 3÷5 3 ÷ 5 ÷5 8÷ 3±5 ±5
3=5 =5 8= 3≠5 ≠5 8≠ 3=5 3 = 5 =5 8= 3≠5 ≠5 8≠
8*5 8 * 7 WALLPAPER* 8*5 8 * 7 *8 8* X*A
B-O BO BO B—O M•N ⌘- B-O BO BO B—O M•N ⌘-
-Selvece -Selvece
darest-Selvece darest-Selvece
@ -197,22 +197,34 @@ A<->B<>C<—>D
x<-4 x < -4 x<-y x<-4 x < -4 x<-y
12:35 12:35
1.2 34.56.78.90.12 1.2 34.56.78.90.12
A*Y V*V W*W N*N X*X A+Y V+V W+W N+N X+X
Λ*Λ Σ*Σ Δ*Δ Y*Y &* Λ+Λ Σ+Σ Δ+Δ Y+Y &+
:-) :) :—) :-) :) :—)
calt case should cascade: calt case should cascade:
U() U[] U{} rightx should be rightx.case U() U[] U{} rightx should be rightx.case
()U []U {}U special-cased as "delim' delim -> delim.case" ()U []U {}U special-cased as "delim' delim -> delim.case"
---U--- all hyphens should be hyphen.case ---U--- all hyphens should be hyphen.case
U-→(){}[]* all should be .case U-→(){}[] all should be .case
x[]{}H "x br br" separate from "cb cb H" x[]{}H "x br br" separate from "cb cb H"
left side cascades up to 5 characters: left side cascades up to 5 characters:
******ABBA****** ••••••ABBA••••••
------M------ ------M------
@@@@@@M@@@@@@ @@@@@@M@@@@@@
++++++M++++++ ++++++M++++++
x[x] [X] x lc x lc followed by .case C .case
(Xx) lc uc uc lc
[Zzz] lc uc lc lc lc
(XX)
(x)
(X)
( ) M
() M
()M
X(_) .case around underscore next to uc
(_) lc otherwise
`) `)
@ -1526,17 +1538,19 @@ document.head.appendChild(fontCSS)
<label title='Capital spacing (adds 16 UPM to each sidebearing)'><input type="checkbox" class="featopt" name="feat:cpsp"> cpsp &nbsp;(Capital spacing)</label> <label title='Capital spacing (adds 16 UPM to each sidebearing)'><input type="checkbox" class="featopt" name="feat:cpsp"> cpsp &nbsp;(Capital spacing)</label>
<label title='Stylistic Alternates'><input type="checkbox" class="featopt" name="feat:salt"> salt &nbsp;(Stylistic Alternates)</label> <label title='Stylistic Alternates'><input type="checkbox" class="featopt" name="feat:salt"> salt &nbsp;(Stylistic Alternates)</label>
<label title='Stylistic set 1 "Open Digits"'><input type="checkbox" class="featopt" name="feat:ss01"> ss01 &nbsp;(Open Digits)</label> <label title='Stylistic set 1 "Open Digits"'><input type="checkbox" class="featopt" name="feat:ss01"> ss01 &nbsp;(Open Digits)</label>
<label title='Stylistic set 1 "Disambiguation"'><input type="checkbox" class="featopt" name="feat:ss02"> ss02 &nbsp;(Disambiguation)</label> <label title='Stylistic set 2 "Disambiguation"'><input type="checkbox" class="featopt" name="feat:ss02"> ss02 &nbsp;(Disambiguation)</label>
<label title='Stylistic set 3 "Lower case r curves into round neighbors"'><input type="checkbox" class="featopt" name="feat:ss03"> ss03 &nbsp;(Curved r)</label>
<label title='Character Variant 1 "Alternate one"'><input type="checkbox" class="featopt" name="feat:cv01"> cv01 &nbsp;(Alternate one)</label> <label title='Character Variant 1 "Alternate one"'><input type="checkbox" class="featopt" name="feat:cv01"> cv01 &nbsp;(Alternate one)</label>
<label title='Character Variant 2 "Open four"'><input type="checkbox" class="featopt" name="feat:cv02"> cv02 &nbsp;(Open four)</label> <label title='Character Variant 2 "Open four"'><input type="checkbox" class="featopt" name="feat:cv02"> cv02 &nbsp;(Open four)</label>
<label title='Character Variant 3 "Open six"'><input type="checkbox" class="featopt" name="feat:cv03"> cv03 &nbsp;(Open six)</label> <label title='Character Variant 3 "Open six"'><input type="checkbox" class="featopt" name="feat:cv03"> cv03 &nbsp;(Open six)</label>
<label title='Character Variant 4 "Open nine"'><input type="checkbox" class="featopt" name="feat:cv04"> cv04 &nbsp;(Open nine)</label> <label title='Character Variant 4 "Open nine"'><input type="checkbox" class="featopt" name="feat:cv04"> cv04 &nbsp;(Open nine)</label>
<label title='Character Variant 5 "Lower case L with tail")'><input type="checkbox" class="featopt" name="feat:cv05"> cv05 &nbsp;(Lower case L with tail)</label> <label title='Character Variant 5 "Lower case L with tail")'><input type="checkbox" class="featopt" name="feat:cv05"> cv05 &nbsp;(Lower case L with tail)</label>
<label title='Character Variant 6 "Lower case R with straight tail")'><input type="checkbox" class="featopt" name="feat:cv06"> cv06 &nbsp;(Straight lower case R)</label> <label title='Character Variant 6 "Lower case r with curved tail")'><input type="checkbox" class="featopt" name="feat:cv06"> cv06 &nbsp;(Curved lower case r)</label>
<label title='Character Variant 7 "Alternate German double-s")'><input type="checkbox" class="featopt" name="feat:cv07"> cv07 &nbsp;(German double-s)</label> <label title='Character Variant 7 "Alternate German double-s")'><input type="checkbox" class="featopt" name="feat:cv07"> cv07 &nbsp;(German double-s)</label>
<label title='Character Variant 8 "Upper-case i with serif")'><input type="checkbox" class="featopt" name="feat:cv08"> cv08 &nbsp;(Upper-case i with serif)</label> <label title='Character Variant 8 "Upper-case i with serif")'><input type="checkbox" class="featopt" name="feat:cv08"> cv08 &nbsp;(Upper-case i with serif)</label>
<label title='Character Variant 9 "Flat top three")'><input type="checkbox" class="featopt" name="feat:cv09"> cv09 &nbsp;(Flat top three)</label> <label title='Character Variant 9 "Flat top three")'><input type="checkbox" class="featopt" name="feat:cv09"> cv09 &nbsp;(Flat top three)</label>
<label title='Character Variant 10 "Capital G with spur")'><input type="checkbox" class="featopt" name="feat:cv10"> cv10 &nbsp;(Capital G with spur)</label> <label title='Character Variant 10 "Capital G with spur")'><input type="checkbox" class="featopt" name="feat:cv10"> cv10 &nbsp;(Capital G with spur)</label>
<label title='Character Variant 11 "Single-storey a")'><input type="checkbox" class="featopt" name="feat:cv11"> cv11 &nbsp;(Single-storey a)</label>
</div> </div>
<div class="checkbox-group"> <div class="checkbox-group">

View file

@ -31,6 +31,13 @@ except OSError:
addr = ("localhost", 3003) addr = ("localhost", 3003)
if len(sys.argv) > 1:
if sys.argv[1] == '-h':
print('usage: %s [-h | --bind-any]' % sys.argv[0], file=sys.stdout)
sys.exit(0)
elif sys.argv[1] == '--bind-any':
addr = ("0.0.0.0", 3003)
# make ^C instantly exit program # make ^C instantly exit program
signal.signal(signal.SIGINT, sighandler) signal.signal(signal.SIGINT, sighandler)

View file

@ -76,6 +76,12 @@ body {
body { body {
font-family: 'Inter var', system-ui, sans-serif; font-family: 'Inter var', system-ui, sans-serif;
} }
body.chrome-win {
/* Chrome has some VF issues; worst are on Windows with incorrect kerning.
We disable VF on Chrome on Windows for that reason.
*/
font-family: Inter, system-ui, sans-serif;
}
} }
DISABLED:target:before { DISABLED:target:before {
@ -508,29 +514,6 @@ a > img { display: block; }
width: 100%; width: 100%;
} }
/* --------------------------------------------------------------------- */
tablex {
display: flex;
}
tablex > t {
display: table;
}
tablex > t > h {
display: table-row;
opacity:0.4;
}
tablex > t > h > * {
padding-bottom:1em;
}
tablex > t > h to {
visibility: hidden;
}
tablex > t > r {
text-decoration: none;
display: table-row;
}
/* --------------------------------------------------------------------- */ /* --------------------------------------------------------------------- */
/* grid */ /* grid */
@ -737,6 +720,7 @@ instead.
.ff-ss01 { font-feature-settings: 'ss01' 1; -webkit-font-feature-settings: 'ss01' 1; -ms-font-feature-settings: 'ss01' 1; -moz-font-feature-settings: 'ss01' 1; } .ff-ss01 { font-feature-settings: 'ss01' 1; -webkit-font-feature-settings: 'ss01' 1; -ms-font-feature-settings: 'ss01' 1; -moz-font-feature-settings: 'ss01' 1; }
.ff-ss02 { font-feature-settings: 'ss02' 1; -webkit-font-feature-settings: 'ss02' 1; -ms-font-feature-settings: 'ss02' 1; -moz-font-feature-settings: 'ss02' 1; } .ff-ss02 { font-feature-settings: 'ss02' 1; -webkit-font-feature-settings: 'ss02' 1; -ms-font-feature-settings: 'ss02' 1; -moz-font-feature-settings: 'ss02' 1; }
.ff-ss03 { font-feature-settings: 'ss03' 1; -webkit-font-feature-settings: 'ss03' 1; -ms-font-feature-settings: 'ss03' 1; -moz-font-feature-settings: 'ss03' 1; }
.ff-cv01 { font-feature-settings: 'cv01' 1; -webkit-font-feature-settings: 'cv01' 1; -ms-font-feature-settings: 'cv01' 1; -moz-font-feature-settings: 'cv01' 1; } .ff-cv01 { font-feature-settings: 'cv01' 1; -webkit-font-feature-settings: 'cv01' 1; -ms-font-feature-settings: 'cv01' 1; -moz-font-feature-settings: 'cv01' 1; }
.ff-cv02 { font-feature-settings: 'cv02' 1; -webkit-font-feature-settings: 'cv02' 1; -ms-font-feature-settings: 'cv02' 1; -moz-font-feature-settings: 'cv02' 1; } .ff-cv02 { font-feature-settings: 'cv02' 1; -webkit-font-feature-settings: 'cv02' 1; -ms-font-feature-settings: 'cv02' 1; -moz-font-feature-settings: 'cv02' 1; }
.ff-cv03 { font-feature-settings: 'cv03' 1; -webkit-font-feature-settings: 'cv03' 1; -ms-font-feature-settings: 'cv03' 1; -moz-font-feature-settings: 'cv03' 1; } .ff-cv03 { font-feature-settings: 'cv03' 1; -webkit-font-feature-settings: 'cv03' 1; -ms-font-feature-settings: 'cv03' 1; -moz-font-feature-settings: 'cv03' 1; }
@ -747,3 +731,4 @@ instead.
.ff-cv08 { font-feature-settings: 'cv08' 1; -webkit-font-feature-settings: 'cv08' 1; -ms-font-feature-settings: 'cv08' 1; -moz-font-feature-settings: 'cv08' 1; } .ff-cv08 { font-feature-settings: 'cv08' 1; -webkit-font-feature-settings: 'cv08' 1; -ms-font-feature-settings: 'cv08' 1; -moz-font-feature-settings: 'cv08' 1; }
.ff-cv09 { font-feature-settings: 'cv09' 1; -webkit-font-feature-settings: 'cv09' 1; -ms-font-feature-settings: 'cv09' 1; -moz-font-feature-settings: 'cv09' 1; } .ff-cv09 { font-feature-settings: 'cv09' 1; -webkit-font-feature-settings: 'cv09' 1; -ms-font-feature-settings: 'cv09' 1; -moz-font-feature-settings: 'cv09' 1; }
.ff-cv10 { font-feature-settings: 'cv10' 1; -webkit-font-feature-settings: 'cv10' 1; -ms-font-feature-settings: 'cv10' 1; -moz-font-feature-settings: 'cv10' 1; } .ff-cv10 { font-feature-settings: 'cv10' 1; -webkit-font-feature-settings: 'cv10' 1; -ms-font-feature-settings: 'cv10' 1; -moz-font-feature-settings: 'cv10' 1; }
.ff-cv11 { font-feature-settings: 'cv11' 1; -webkit-font-feature-settings: 'cv11' 1; -ms-font-feature-settings: 'cv11' 1; -moz-font-feature-settings: 'cv11' 1; }

View file

@ -94,7 +94,7 @@ function InterDynamicLineHeight(fontSize) {
} }
// Mac or not? Maybe even a buggy Safari? // Mac or not? Maybe a buggy Safari or a busted Chrome on Windows...
var isMac = false var isMac = false
if (!window.MSStream && if (!window.MSStream &&
/mac|ipad|iphone|ipod/i.test(navigator.userAgent)) /mac|ipad|iphone|ipod/i.test(navigator.userAgent))
@ -105,4 +105,9 @@ if (!window.MSStream &&
{ {
document.body.classList.add('safari') document.body.classList.add('safari')
} }
} else if (
navigator.userAgent.indexOf('Windows') != -1 &&
navigator.userAgent.indexOf('Chrome') != -1
) {
document.body.classList.add('chrome-win')
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 67 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 KiB

After

Width:  |  Height:  |  Size: 416 KiB

Before After
Before After

2
docs/res/weights-and-styles.svg Normal file → Executable file

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 231 KiB

After

Width:  |  Height:  |  Size: 230 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

After

Width:  |  Height:  |  Size: 61 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 KiB

After

Width:  |  Height:  |  Size: 143 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 175 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 KiB

After

Width:  |  Height:  |  Size: 528 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2 MiB

After

Width:  |  Height:  |  Size: 2.1 MiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 93 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 224 KiB

After

Width:  |  Height:  |  Size: 232 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 98 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 KiB

After

Width:  |  Height:  |  Size: 241 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 229 KiB

After

Width:  |  Height:  |  Size: 244 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 49 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 132 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 89 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 52 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Before After
Before After

Some files were not shown because too many files have changed in this diff Show more