+if tty -s; then
+ case $TERM in
+ linux)
+ [ -f /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n
-case $(tty) in
-(/dev/tty[0-9]|/dev/tty[0-9][0-9]|/dev/vc/*)
-
- if [ -f /etc/sysconfig/console ]
- then
+ if [ -f /etc/sysconfig/console ]; then
. /etc/sysconfig/console
-
- if [ "$CONSOLEMAP" != "" ]
- then
+
+ case "$LANG" in
+ *.utf8|*.UTF-8)
+ [ -x /bin/unicode_start ] && /sbin/consoletype fg && /bin/unicode_start
+ ;;
+ esac
+
+ if [ "$CONSOLEMAP" != "" ]; then
# Switch the G0 charset map from the default ISO-8859-1
# to the user-defined map (loaded with consolefonts)
- echo -n -e '\033(K' > /proc/$$/fd/0
+ if [ -w /proc/$$/fd/0 -a -t 0 ]; then
+ echo -n -e '\033(K' > /proc/$$/fd/0
+ else
+ echo -n -e '\033(K' > /dev/tty
+ fi
fi
fi
;;
-esac
+ esac
+fi