![Florian Müllner](/assets/img/avatar_default.png)
Sadly, xgettext's dealing with template strings is abysimal, so we had to stop using them in files with translatable strings. Make sure we don't accidentally sneak in template strings again(*) and enforce that rule in a CI job. (*) easy "mistake", considering how much nicer they are than String.prototype.format() https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1016
24 lines
440 B
Bash
Executable File
24 lines
440 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# find files from POTFILES.in that use js template strings
|
|
baddies=$(grep -l '${' $(grep ^js po/POTFILES.in))
|
|
|
|
if [ ${#baddies} -eq 0 ]; then
|
|
exit 0
|
|
fi
|
|
|
|
cat >&2 <<EOT
|
|
|
|
xgettext cannot handle template strings properly, so we ban their use
|
|
in files with translatable strings.
|
|
|
|
The following files are listed in po/POTFILES.in and use template strings:
|
|
|
|
EOT
|
|
for f in $baddies; do
|
|
echo " $f" >&2
|
|
done
|
|
echo >&2
|
|
|
|
exit 1
|