diff --git a/IOSEVKA-Custom-NF/private-build-plans.toml b/IOSEVKA-Custom-NF/miosevka-build-plans.toml similarity index 85% rename from IOSEVKA-Custom-NF/private-build-plans.toml rename to IOSEVKA-Custom-NF/miosevka-build-plans.toml index 75a045e..aeea1b5 100644 --- a/IOSEVKA-Custom-NF/private-build-plans.toml +++ b/IOSEVKA-Custom-NF/miosevka-build-plans.toml @@ -1,36 +1,37 @@ -[buildPlans.miosevka] +[buildPlans.Miosevka] family = "Miosevka" spacing = "normal" serifs = "sans" -no-cv-ss = true -export-glyph-names = false +noCvSs = true +exportGlyphNames = false - [buildPlans.miosevka.variants] + [buildPlans.Miosevka.variants] inherits = "ss20" - [buildPlans.miosevka.variants.design] + [buildPlans.Miosevka.variants.design] f = "flat-hook-serifless-crossbar-at-x-height" g = "single-storey-serifless" i = "serifed-flat-tailed" l = "serifed-flat-tailed" m = "short-leg-serifless" t = "flat-hook" + five = "oblique-flat" tilde = "low" asterisk = "turn-hex-low" underscore = "high" caret = "medium" + ascii-grave = "straight" paren = "flat-arc" brace = "curly-flat-boundary" number-sign = "upright-tall" at = "threefold" percent = "rings-continuous-slash" bar = "natural-slope" - ascii-grave = "straight" pilcrow = "low" lig-ltgteq = "slanted" lig-neq = "slightly-slanted" - [buildPlans.miosevka.variants.italic] + [buildPlans.Miosevka.variants.italic] capital-b = "more-asymmetric-serifless" capital-d = "standard-serifless" capital-e = "serifless" @@ -68,7 +69,7 @@ export-glyph-names = false zero = "slashed-split" two = "curly-neck" four = "open" - five = "vertical-upper-left-bar" + five = "oblique-flat" six = "straight-bar" seven = "curly-serifless-crossbar" tilde = "low" @@ -88,29 +89,29 @@ export-glyph-names = false lig-double-arrow-bar = "without-notch" lig-single-arrow-bar = "without-notch" -[buildPlans.miosevka.weights.regular] +[buildPlans.Miosevka.weights.Regular] shape = 400 menu = 400 css = 400 -[buildPlans.miosevka.weights.bold] +[buildPlans.Miosevka.weights.Bold] shape = 700 menu = 700 css = 700 -[buildPlans.miosevka.widths.normal] +[buildPlans.Miosevka.widths.Normal] shape = 600 menu = 5 css = "normal" -[buildPlans.miosevka.slopes.upright] +[buildPlans.Miosevka.slopes.Upright] angle = 0 shape = "upright" menu = "upright" css = "normal" -[buildPlans.miosevka.slopes.italic] +[buildPlans.Miosevka.slopes.Italic] angle = 9.4 shape = "italic" menu = "italic" -css = "italic" +css = "italic" \ No newline at end of file diff --git a/IOSEVKA-Custom-NF/nerdfont.bat b/IOSEVKA-Custom-NF/nerdfont.bat index e8746b3..7ef2e0f 100644 --- a/IOSEVKA-Custom-NF/nerdfont.bat +++ b/IOSEVKA-Custom-NF/nerdfont.bat @@ -1,38 +1,57 @@ +@echo off setlocal :: TODO/prerequisites in comments :: tested in Windows11 setup :: install nodejs, ttfautohint, fontforge python 3 as mentioned in :: - https://github.com/be5invis/Iosevka/blob/main/doc/custom-build.md#building -:: - https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.2/FontPatcher.zip +:: - https://github.com/ryanoasis/nerd-fonts/releases/download/v3.1.1/FontPatcher.zip -set IOSEVKA_PATH="D:\SOURCE\github\Iosevka" +SET IOSEVKA_PATH="D:\SOURCE\github\Iosevka" +SET "PATH=C:\Program Files (x86)\FontForgeBuilds\bin>;%PATH%" +SET FFPYTHON_EXE="C:\Program Files (x86)\FontForgeBuilds\bin\ffpython.exe" +SET FONTVERNUM=7 +SET OUTPATH="D:\Font\Miosevka%FONTVERNUM%" +:: SET NERDFONT_PATCHER_PATH [ download from path above] +SET NERDFONT_PATCHER_PATH="D:\SETUP.tmp\nerdfont\font-patcher" +SET FONTVER=Miosevka%FONTVERNUM% +echo ======================================================= +echo Sync Iosevka cd /d %IOSEVKA_PATH% rmdir /S /Q "%IOSEVKA_PATH%\dist" + git pull --depth=1 -copy /Y %~dp0\private-build-plans.toml %IOSEVKA_PATH% call npm install -call npm run build -- ttf::miosevka +echo ======================================================= +echo Build Miosevka +copy /Y %~dp0\miosevka-build-plans.toml %IOSEVKA_PATH%\private-build-plans.toml +call npm run build -- ttf::Miosevka +echo ======================================================= +echo Build Riosevka +copy /Y %~dp0\riosevka-build-plans.toml %IOSEVKA_PATH%\private-build-plans.toml +call npm run build -- ttf::Riosevka -SET "PATH=C:\Program Files (x86)\FontForgeBuilds\bin>;%PATH%" -SET FFPYTHON_EXE="C:\Program Files (x86)\FontForgeBuilds\bin\ffpython.exe" -SET FONTVER=Miosevka6 -SET OUTPATH="D:\Font\%FONTVER%" -:: SET NERDFONT_PATCHER_PATH [ download from https://github.com/ryanoasis/nerd-fonts/releases/download/v3.0.2/FontPatcher.zip] mkdir %OUTPATH% cd /d %OUTPATH% -SET NERDFONT_PATCHER_PATH="D:\SETUP.tmp\nerdfont\font-patcher" - +echo ======================================================= +echo patch fonts %FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\miosevka\ttf\miosevka-regular.ttf" %FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\miosevka\ttf\miosevka-italic.ttf" %FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\miosevka\ttf\miosevka-bold.ttf" %FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\miosevka\ttf\miosevka-boldItalic.ttf" -copy /Y %~dp0\license.* %OUTPATH% +%FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\riosevka\ttf\riosevka-regular.ttf" +%FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\riosevka\ttf\riosevka-italic.ttf" +%FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\riosevka\ttf\riosevka-bold.ttf" +%FFPYTHON_EXE% %NERDFONT_PATCHER_PATH% -c "%IOSEVKA_PATH%\dist\riosevka\ttf\riosevka-boldItalic.ttf" +echo ======================================================= +echo Copy Files +copy /Y %~dp0\..\license.* %OUTPATH% copy /Y "%IOSEVKA_PATH%\dist\miosevka\ttf\*.ttf" %OUTPATH% +copy /Y "%IOSEVKA_PATH%\dist\riosevka\ttf\*.ttf" %OUTPATH% cd .. - +echo create %FONTVER%.zip tar.exe -a -c -f "%FONTVER%.zip" %OUTPATH% explorer . diff --git a/IOSEVKA-Custom-NF/riosevka-build-plans.toml b/IOSEVKA-Custom-NF/riosevka-build-plans.toml new file mode 100644 index 0000000..1fa754b --- /dev/null +++ b/IOSEVKA-Custom-NF/riosevka-build-plans.toml @@ -0,0 +1,101 @@ +[buildPlans.Riosevka] +family = "Riosevka" +spacing = "normal" +serifs = "sans" +noCvSs = true +exportGlyphNames = false + + [buildPlans.Riosevka.variants] + inherits = "ss20" + + [buildPlans.Riosevka.variants.design] + capital-g = "toothless-corner-serifless-hooked" + a = "single-storey-earless-corner-tailed" + b = "toothless-corner-serifless" + d = "toothless-corner-serifless" + e = "rounded" + f = "serifless" + g = "single-storey-flat-hook-earless-rounded" + i = "tailed" + j = "serifless" + l = "tailed" + m = "earless-rounded-double-arch-short-leg-serifless" + n = "earless-rounded-straight-serifless" + p = "earless-rounded-serifless" + q = "earless-corner-straight-serifless" + r = "hookless-serifless" + s = "serifless" + u = "toothless-rounded-serifless" + five = "upright-arched" + nine = "open-contour" + asterisk = "penta-low" + brace = "curly-flat-boundary" + lig-ltgteq = "flat" + + [buildPlans.Riosevka.variants.italic] + capital-g = "toothless-rounded-serifless-hooked" + capital-j = "serifed" + capital-k = "curly-serifless" + capital-m = "hanging-serifless" + capital-q = "curly-tailed" + capital-z = "curly-serifless-with-crossbar" + b = "toothed-serifless" + d = "toothed-serifless" + f = "tailed" + g = "single-storey-earless-rounded" + i = "tailed-serifed" + j = "serifed" + k = "diagonal-tailed-cursive-serifless" + l = "tailed-serifed" + m = "short-leg-top-left-serifed" + n = "straight-serifless" + p = "eared-serifless" + q = "straight-serifless" + r = "hookless-serifless" + s = "serifless" + t = "bent-hook" + u = "toothed-serifless" + v = "cursive-serifless" + w = "cursive-serifless" + x = "curly-serifless" + z = "curly-serifless-with-horizontal-crossbar" + five = "oblique-flat" + six = "open-contour" + seven = "curly-serifless-crossbar" + nine = "open-contour" + asterisk = "turn-hex-mid" + ampersand = "lower-open" + at = "fourfold-solid-inner-tall" + dollar = "interrupted" + cent = "through" + percent = "rings-continuous-slash-also-connected" + question = "smooth" + pilcrow = "low" + lig-ltgteq = "slanted" + +[buildPlans.Riosevka.weights.Regular] +shape = 400 +menu = 400 +css = 400 + +[buildPlans.Riosevka.weights.Bold] +shape = 700 +menu = 700 +css = 700 + +[buildPlans.Riosevka.widths.Normal] +shape = 600 +menu = 5 +css = "normal" + +[buildPlans.Riosevka.slopes.Upright] +angle = 0 +shape = "upright" +menu = "upright" +css = "normal" + +[buildPlans.Riosevka.slopes.Italic] +angle = 9.4 +shape = "italic" +menu = "italic" +css = "italic" \ No newline at end of file