#!/bin/sh # initialize fpc's error message language from locale # NB: English gets compiled in as default # # (c) 2023 Michael Shigorin # free to use on the same conditions as fpc itself # do not reset what's set already cfg="/etc/fpc.cfg" [ -w "$cfg" ] || exit 0 ! grep -q "^-Fr" "$cfg" || exit 0 # look at the locale... lang="$LANG" [ -n "$lang" ] || lang="$LC_CTYPE" [ -n "$lang" ] || exit 0 msg="" # might need update, see fpcbuild/fpcsrc/compiler/msg/ contents; # some "matches" might be incorrect regarding the actual charset, # please report/fix as appropriate case "$lang" in ca_ES*) msg="ct"; break;; de*.UTF-8) msg="du"; break;; de*) # LATIN-US DOS msg="d"; break;; da*) msg="da"; break;; en*) msg="e"; break;; es*) msg="es"; break;; fr*) # "f" has CP850 msg="fi"; break;; he*) # "he" has CP1255 msg="heu"; break;; id*) msg="id"; break;; it*) msg="iu"; break;; nl*) msg="n"; break;; pl*) # "pl" has CP852 msg="pli"; break;; pt*) # "pt" has CP850 msg="ptu"; break;; ru*|*RU*|be*|kk*|ky*|md*|tg*|tt*|uk*|uz*) msg="ru"; break;; esac # ...three! [ -n "$msg" ] || exit 0 echo "Setting up $cfg for \`$msg' error messages" sed -r -i "s,^#(-Fr.*error$msg.msg),\1," "$cfg" ||: