ladybird/Meta/check-emoji.sh

35 lines
1.1 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
set -eo pipefail
script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
cd "${script_path}/.."
files=()
for file in Base/res/emoji/*.png; do
files+=("${file}")
done
found_invalid_filenames=0
for fn in "${files[@]}"; do
basename=$(basename "$fn" .png)
if [[ $basename =~ [^A-Z0-9+_] ]] ; then
echo "$fn contains invalid characters in its filename. Only uppercase letters, numbers, +, and _ should be used."
found_invalid_filenames=1
fi
if [[ $basename == *U+0* ]] ; then
echo "$fn contains codepoint(s) with leading zeros. Leading zeros should be removed from codepoint(s)."
found_invalid_filenames=1
fi
if [[ $basename == *+U* ]] ; then
echo "$fn is incorrectly named. _ should be used as a separator between codepoints, not +."
found_invalid_filenames=1
fi
if [[ $basename == *_U+FE0F* ]] ; then
echo "$fn should not include any emoji presentation selectors. U+FE0F codepoints should be removed from the filename."
found_invalid_filenames=1
fi
done
exit $found_invalid_filenames