#!/bin/bash # omarchy:summary=Check Chinese font availability and fallback correctness # omarchy:examples=omarchycn font status set -euo pipefail failures=0 for family in "Noto Sans CJK SC" "Noto Serif CJK SC" "Noto Sans Mono CJK SC"; do matched=$(fc-match --format '%{family}' "$family") if [[ $matched == *"$family"* ]]; then echo "PASS font: $family" else echo "FAIL font: $family missing (got: $matched)" failures=$((failures + 1)) fi done zh_sans=$(fc-match --format '%{family}' sans-serif:lang=zh-cn) if [[ $zh_sans == *"CJK SC"* ]]; then echo "PASS fallback: zh-cn sans-serif -> $zh_sans" else echo "FAIL fallback: zh-cn sans-serif -> $zh_sans (expected SC variant)" failures=$((failures + 1)) fi # Untagged requests (Chromium/Electron path) must reach SC before JP/KR untagged=$(fc-match --sort sans-serif | grep -m1 -oE 'CJK (SC|JP|TC|KR|HK)' || true) if [[ $untagged == "CJK SC" ]]; then echo "PASS fallback: untagged CJK -> SC" else echo "FAIL fallback: untagged CJK -> ${untagged:-none} (expected SC)" failures=$((failures + 1)) fi exit $((failures > 0 ? 1 : 0))