diff --git a/.gitignore b/.gitignore index 4bacf76..ef22b71 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,4 @@ css/code.css pgvv/ all_chars.txt -**/*-Subset.woff2 +**/fonts/**/*-Subset.* diff --git a/build.sh b/build.sh index 2f378ce..a00c24b 100755 --- a/build.sh +++ b/build.sh @@ -13,12 +13,26 @@ function soup_config { source ./pgvv/bin/activate find acl.cool/site/ ytheleus.org/site/ -type f \( -name '*.dj' -o -name '*.html' \) -exec cat {} + > all_chars.txt +cat common_chars.txt >> all_chars.txt + for font in fonts/JuliaMono/*{-Light,-Regular,-SemiBold}{,Italic}.woff2; do echo "Subsetting $font" pyftsubset "$font" --flavor=woff2 --text-file=all_chars.txt \ --output-file="$(awk -F '.woff2' '{print $1}' <<< "$font")-Subset.woff2" done +for font in fonts/Alegreya/static/Alegreya-{Regular,Italic,Bold,BoldItalic}.ttf; do + echo "Subsetting $font" + pyftsubset "$font" --text-file=all_chars.txt \ + --output-file="$(awk -F '.ttf' '{print $1}' <<< "$font")-Subset.ttf" +done + +for font in fonts/Alegreya_Sans/AlegreyaSans-{Regular,Italic,Bold,BoldItalic}.ttf; do + echo "Subsetting $font" + pyftsubset "$font" --text-file=all_chars.txt \ + --output-file="$(awk -F '.ttf' '{print $1}' <<< "$font")-Subset.ttf" +done + rm css/code.css pygmentize -f html -S algol_nu | grep -v 'line-height' > css/code.css diff --git a/common_chars.txt b/common_chars.txt new file mode 100644 index 0000000..4ec42a2 --- /dev/null +++ b/common_chars.txt @@ -0,0 +1,11 @@ +—–- + +⁰¹²³⁴⁵⁶⁷⁸⁹ ⁽⁾ + +↩︎ + +“” + +!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ + +… \ No newline at end of file diff --git a/css/fonts.css b/css/fonts.css index 0b6da49..159c95e 100644 --- a/css/fonts.css +++ b/css/fonts.css @@ -56,56 +56,56 @@ @font-face { font-family: 'BodySerif'; - src: url('../assets/fonts/Alegreya/static/Alegreya-Regular.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya/static/Alegreya-Regular-Subset.ttf') format('truetype'); font-weight: normal; font-style: normal; } @font-face { font-family: 'BodySerif'; - src: url('../assets/fonts/Alegreya/static/Alegreya-Italic.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya/static/Alegreya-Italic-Subset.ttf') format('truetype'); font-weight: normal; font-style: italic; } @font-face { font-family: 'BodySerif'; - src: url('../assets/fonts/Alegreya/static/Alegreya-Bold.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya/static/Alegreya-Bold-Subset.ttf') format('truetype'); font-weight: bold; font-style: normal; } @font-face { font-family: 'BodySerif'; - src: url('../assets/fonts/Alegreya/static/Alegreya-BoldItalic.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya/static/Alegreya-BoldItalic-Subset.ttf') format('truetype'); font-weight: bold; font-style: italic; } @font-face { font-family: 'BodySans'; - src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Regular.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Regular-Subset.ttf') format('truetype'); font-weight: normal; font-style: normal; } @font-face { font-family: 'BodySans'; - src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Italic.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Italic-Subset.ttf') format('truetype'); font-weight: normal; font-style: italic; } @font-face { font-family: 'BodySans'; - src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Bold.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-Bold-Subset.ttf') format('truetype'); font-weight: bold; font-style: normal; } @font-face { font-family: 'BodySans'; - src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-BoldItalic.ttf') format('truetype'); + src: url('../assets/fonts/Alegreya_Sans/AlegreyaSans-BoldItalic-Subset.ttf') format('truetype'); font-weight: bold; font-style: italic; }