1
0
Fork 0
mirror of synced 2024-05-20 12:33:29 +12:00

Build insturtions, moved build to root

This commit is contained in:
Nikita Prokopov 2019-04-04 23:05:55 +03:00
parent 182470b88f
commit acba6ee778
3 changed files with 63 additions and 45 deletions

View file

@ -180,6 +180,23 @@ Other monospaced fonts with ligatures:
- [Iosevka](https://be5invis.github.io/Iosevka/) (free)
- [DejaVu Sans Code](https://github.com/SSNikolaevich/DejaVuSansCode) (free)
### Building
On macOS:
```
sudo easy_install pip
pip install virtualenv --user
python -m virtualenv venv
source venv/bin/activate
pip install gftools
pip install fontmake
brew install ttfautohint
brew install woff2
```
Run `./build.sh`
### Credits
- Author: Nikita Prokopov [@nikitonsky](https://twitter.com/nikitonsky)

45
build.sh Executable file
View file

@ -0,0 +1,45 @@
#!/bin/bash
source venv/bin/activate
# variable font
fontmake -g FiraCode.glyphs -o variable --output-dir distr/variable_ttf
# statics
fontmake -g FiraCode.glyphs -o ttf --output-dir distr/ttf
fontmake -g FiraCode.glyphs -o otf --output-dir distr/otf
# ============================================================================
# Autohinting ================================================================
statics=$(ls distr/ttf/*.ttf)
for file in $statics; do
echo "fix DSIG in " ${file}
gftools fix-dsig --autofix ${file}
echo "TTFautohint " ${file}
# autohint with detailed info
hintedFile=${file/".ttf"/"-hinted.ttf"}
ttfautohint -I ${file} ${hintedFile} --stem-width-mode nnn
cp ${hintedFile} ${file}
rm -rf ${hintedFile}
done
# ============================================================================
# Build woff2 fonts ==========================================================
# requires https://github.com/google/woff2
rm -rf distr/woff2
ttfs=$(ls distr/*/*.ttf)
for ttf in $ttfs; do
woff2_compress $ttf
done
mkdir -p distr/woff2
woff2s=$(ls distr/*/*.woff2)
for woff2 in $woff2s; do
mv $woff2 distr/woff2/$(basename $woff2)
done

View file

@ -1,45 +0,0 @@
#!/bin/bash
source venv/bin/activate
# variable font
fontmake -g FiraCode.glyphs -o variable --output-dir distr/variable_ttf
# statics
fontmake -g FiraCode.glyphs -o ttf --output-dir distr/ttf
fontmake -g FiraCode.glyphs -o otf --output-dir distr/otf
# ============================================================================
# Autohinting ================================================================
statics=$(ls distr/ttf/*.ttf)
for file in $statics; do
echo "fix DSIG in " ${file}
gftools fix-dsig --autofix ${file}
echo "TTFautohint " ${file}
# autohint with detailed info
hintedFile=${file/".ttf"/"-hinted.ttf"}
ttfautohint -I ${file} ${hintedFile} --stem-width-mode nnn
cp ${hintedFile} ${file}
rm -rf ${hintedFile}
done
# ============================================================================
# Build woff2 fonts ==========================================================
# requires https://github.com/google/woff2
rm -rf distr/woff2
ttfs=$(ls distr/*/*.ttf)
for ttf in $ttfs; do
woff2_compress $ttf
done
mkdir -p distr/woff2
woff2s=$(ls distr/*/*.woff2)
for woff2 in $woff2s; do
mv $woff2 distr/woff2/$(basename $woff2)
done

View file

@ -0,0 +1 @@
../../build.sh