update Verda deps.

This commit is contained in:
belleve 2018-09-14 22:10:27 +08:00
parent 163ab5493f
commit d7ad5d6432
7 changed files with 62 additions and 10 deletions

View file

@ -71,11 +71,13 @@ Since version 2.0, Iosevka would no longer support building via `makefile`. To i
# When buildPlans.<plan name>.weights is absent # When buildPlans.<plan name>.weights is absent
# All weights would built and mapped to default shape/CSS # All weights would built and mapped to default shape/CSS
[buildPlans.iosevka-custom.weights.regular] [buildPlans.iosevka-custom.weights.regular]
shape = 400 # Weight of glyph shapes shape = 400 # Weight for glyph shapes
css = 400 # Weight of menu and CSS menu = 400 # Weight for menu name
css = 400 # Weight for WebFont CSS
[buildPlans.iosevka-custom.weights.bold] [buildPlans.iosevka-custom.weights.bold]
shape = 700 shape = 700
menu = 700
css = 700 css = 700
# Override default building slant sets # Override default building slant sets

View file

@ -178,38 +178,47 @@ from = [
# CSS weight : affects the font menu name and webfont CSS # CSS weight : affects the font menu name and webfont CSS
[weights.thin] [weights.thin]
shape = 100 shape = 100
menu = 100
css = 100 css = 100
[weights.extralight] [weights.extralight]
shape = 200 shape = 200
menu = 200
css = 200 css = 200
[weights.light] [weights.light]
shape = 300 shape = 300
menu = 300
css = 300 css = 300
[weights.regular] [weights.regular]
shape = 400 shape = 400
menu = 400
css = 400 css = 400
[weights.medium] [weights.medium]
shape = 500 shape = 500
menu = 500
css = 500 css = 500
[weights.semibold] [weights.semibold]
shape = 600 shape = 600
menu = 600
css = 600 css = 600
[weights.bold] [weights.bold]
shape = 700 shape = 700
menu = 700
css = 700 css = 700
[weights.extrabold] [weights.extrabold]
shape = 800 shape = 800
menu = 800
css = 800 css = 800
[weights.heavy] [weights.heavy]
shape = 900 shape = 900
menu = 900
css = 900 css = 900
# Slant mappings (style => CSS) # Slant mappings (style => CSS)

View file

@ -112,8 +112,8 @@ function getParameters(argv) {
para.naming = { para.naming = {
family: argv.family, family: argv.family,
version: argv.ver, version: argv.ver,
weight: argv.weight - 0, weight: argv["menu-weight"] - 0,
slant: argv.slant slant: argv["menu-slant"]
}; };
return para; return para;

View file

@ -23,7 +23,7 @@
"ttf2woff": "^2.0.1", "ttf2woff": "^2.0.1",
"ttf2woff2": "^2.0.3", "ttf2woff2": "^2.0.3",
"unorm": "^1.4.1", "unorm": "^1.4.1",
"verda": "^0.1.5", "verda": "^0.1.6",
"yargs": "^12.0.0", "yargs": "^12.0.0",
"primitive-quadify-off-curves": "^0.4.0" "primitive-quadify-off-curves": "^0.4.0"
}, },

View file

@ -0,0 +1,27 @@
[buildPlans.iosevka-custom] # <iosevka-custom> is your plan name
family = "Iosevka Custom" # Font menu family name
design = ["leading-1500", "v-i-hooky", "v-l-hooky"] # Customize styles
# Override default building weights
# When buildPlans.<plan name>.weights is absent
# All weights would built and mapped to default shape/CSS
[buildPlans.iosevka-custom.weights.regular]
shape = 400 # Weight for glyph shapes
menu = 400 # Weight for menu name
css = 400 # Weight for webfont CSS
[buildPlans.iosevka-custom.weights.bold]
shape = 700
menu = 700
css = 700
# end weight section
# Override default building slant sets
# Format: <upright|italic|oblique> = <"normal"|"italic"|"oblique">
# When this section is absent, all slants would be built.
[buildPlans.iosevka-custom.slants]
upright = "normal"
italic = "italic"
oblique = "oblique"

View file

@ -232,6 +232,14 @@
<span class="tag">cv53</span><span class="description"></span> <span class="tag">cv53</span><span class="description"></span>
<span class="sample" style="font-feature-settings:'cv53'">f</span><span class="sample italic" style="font-feature-settings:'cv53'">f</span> <span class="sample" style="font-feature-settings:'cv53'">f</span><span class="sample italic" style="font-feature-settings:'cv53'">f</span>
</li> </li>
</li><li>
<span class="tag">cv54</span><span class="description"></span>
<span class="sample" style="font-feature-settings:'cv54'">$</span><span class="sample italic" style="font-feature-settings:'cv54'">$</span>
</li>
</li><li>
<span class="tag">cv55</span><span class="description"></span>
<span class="sample" style="font-feature-settings:'cv55'">$</span><span class="sample italic" style="font-feature-settings:'cv55'">$</span>
</li>
</ol> </ol>
</section> </section>
<section id="matrix"> <section id="matrix">

View file

@ -1,4 +1,5 @@
"use strict"; "use strict";
const { const {
want, want,
rule: { task, file, oracle, phony }, rule: { task, file, oracle, phony },
@ -7,6 +8,7 @@ const {
journal, journal,
argv argv
} = require("verda"); } = require("verda");
const fs = require("fs"); const fs = require("fs");
const path = require("path"); const path = require("path");
const toml = require("toml"); const toml = require("toml");
@ -96,9 +98,11 @@ function getSuffixSet(weights, slants) {
mapping[suffix] = { mapping[suffix] = {
hives: [`w-${weights[w].shape}`, `s-${s}`], hives: [`w-${weights[w].shape}`, `s-${s}`],
weight: w, weight: w,
cssWeight: weights[w].css || w,
menuWeight: weights[w].menu || weights[w].css || w,
slant: s, slant: s,
cssWeight: weights[w].css, cssStyle: slants[s] || s,
cssStyle: slants[s] menuStyle: slants[s] || s
}; };
} }
} }
@ -132,6 +136,8 @@ oracle(`o:font-building-parameters`).def(async target => {
name: fileName, name: fileName,
family, family,
hives: ["iosevka", ...preHives, ...suffixMapping[suffix].hives, ...postHives], hives: ["iosevka", ...preHives, ...suffixMapping[suffix].hives, ...postHives],
menuWeight: suffixMapping[suffix].menuWeight,
menuStyle: suffixMapping[suffix].menuStyle,
cssWeight: suffixMapping[suffix].cssWeight, cssWeight: suffixMapping[suffix].cssWeight,
cssStyle: suffixMapping[suffix].cssStyle cssStyle: suffixMapping[suffix].cssStyle
}; };
@ -193,7 +199,7 @@ oracle("collection-parts-of:*").def(async (target, id) => {
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
file(`${BUILD}/*/*.ttf`).def(async (target, prefix, suffix) => { file(`${BUILD}/*/*.ttf`).def(async (target, prefix, suffix) => {
const [{ hives, family, cssWeight, cssStyle }, version] = await target.need( const [{ hives, family, menuWeight, menuStyle }, version] = await target.need(
`hives-of:${suffix}`, `hives-of:${suffix}`,
`o:version` `o:version`
); );
@ -206,8 +212,8 @@ file(`${BUILD}/*/*.ttf`).def(async (target, prefix, suffix) => {
["--charmap", charmap], ["--charmap", charmap],
["--family", family], ["--family", family],
["--ver", version], ["--ver", version],
["--weight", cssWeight], ["--menu-weight", menuWeight],
["--slant", cssStyle], ["--menu-slant", menuStyle],
hives hives
); );
await run("otfccbuild", otd, "-o", target.path.full, "-O3", "--keep-average-char-width"); await run("otfccbuild", otd, "-o", target.path.full, "-O3", "--keep-average-char-width");