#!/bin/sh
# stop unicode

if [ ! -e /proc/self/fd/0 ] ; then
   echo "Not setting UTF-8 mode; cannot check console type." >&2
   echo "  please ensure /proc is mounted." >&2
   exit 1
fi

readlink /proc/self/fd/0 | grep -q  -e /dev/vc -e '/dev/tty[^p]' -e /dev/console
if [ $? -eq 1 ]; then
    echo "Not a virtual terminal : Not setting UTF-8 mode." >&2
    exit 1
fi

if [ -n "$previous" ] && [ -n "$runlevel" ] || [ "$runlevel" = "S" ]; then
    RUN_FROM_INIT="yes"
fi

if ! /usr/bin/vt-is-UTF8 --quiet && [ "$RUN_FROM_INIT" != "yes" ]; then
    echo "unicode_stop: Already in byte-mode" >&2
    exit 0
fi

kbd_mode -a

# set DEVICE_PREFIX depending on devfs/udev
if [ -d /dev/vc ]; then
    DEVICE_PREFIX="/dev/vc/"
    else
    DEVICE_PREFIX="/dev/tty"
fi

if [ "$RUN_FROM_INIT" = "yes" ]; then
    # We're being run from within init, so our VCs may not exist yet
    NUM=`grep '^[1-9]' /etc/inittab | cut -d ':' -f 1 | sort -n | tail -n 1`
else
    NUM=`fgconsole --next-available`
    NUM=`expr ${NUM} - 1 `
fi
for vc in `seq 0 ${NUM}`
do 
   /bin/echo -n -e '\033%@' > ${DEVICE_PREFIX}${vc}
done
