#!/bin/bash
set -o errexit -o nounset -o pipefail
cd "$(dirname "$0")/.."
[ -d venv ] && source venv/bin/activate

family_name=${FIRACODE_FAMILY_NAME:-"Fira Code"}
glyphs_file=${FIRACODE_GLYPHS_FILE:-"FiraCode.glyphs"}

dir="distr/ttf/${family_name}"

mkdir -p "${dir}"
rm -rf "${dir:?}/"*

args=( "$@" )
default_weights=( "Light" "Regular" "Retina" "Medium" "SemiBold" "Bold" )
weights=( "${args[@]:-"${default_weights[@]}"}" )

for weight in "${weights[@]}"; do
	file="${dir}/FiraCode-${weight}.ttf"

	echo "=============="
	echo
	echo "  [i] Creating ${file}"
	echo

	fontmake -g "${glyphs_file}" -o ttf --output-path "${file}" -i ".* ${weight}"

	echo "  [i] TTFautohint ${file}"
	ttfautohint --no-info --ignore-restrictions "${file}" "${file}.hinted"
	mv "${file}.hinted" "${file}"
done
