2008-03-27 19:19:49 +05:30
|
|
|
#!@PREFIX@/sbin/runscript
|
2009-05-01 19:41:40 +05:30
|
|
|
# Copyright (c) 2008-2009 Roy Marples <roy@marples.name>
|
2011-06-30 05:16:31 +05:30
|
|
|
# Released under the 2-clause BSD license.
|
2008-03-27 19:19:49 +05:30
|
|
|
|
|
|
|
description="Configures terminal encoding."
|
|
|
|
|
|
|
|
ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
|
2009-04-27 13:21:18 +05:30
|
|
|
: ${unicode:=${UNICODE}}
|
2008-03-27 19:19:49 +05:30
|
|
|
|
|
|
|
depend()
|
|
|
|
{
|
2012-05-27 20:33:24 +05:30
|
|
|
keyword -lxc -openvz -uml -vserver -xenu
|
2012-02-10 21:17:12 +05:30
|
|
|
use root
|
2011-04-15 01:51:02 +05:30
|
|
|
after bootmisc
|
2008-03-27 19:19:49 +05:30
|
|
|
}
|
|
|
|
|
|
|
|
start()
|
|
|
|
{
|
|
|
|
local ttydev=/dev/tty n=
|
|
|
|
[ -d /dev/vc ] && ttydev=/dev/vc/
|
|
|
|
|
|
|
|
# Set terminal encoding to either ASCII or UNICODE.
|
|
|
|
# See utf-8(7) for more information.
|
|
|
|
local termencoding="%@" termmsg="ASCII"
|
|
|
|
if yesno ${unicode}; then
|
|
|
|
termencoding="%G"
|
|
|
|
termmsg="UTF-8"
|
|
|
|
fi
|
|
|
|
|
2009-04-27 13:21:18 +05:30
|
|
|
ebegin "Setting terminal encoding [$termmsg]"
|
2008-03-27 19:19:49 +05:30
|
|
|
n=1
|
2009-04-27 13:21:18 +05:30
|
|
|
while [ ${n} -le "$ttyn" ]; do
|
|
|
|
printf "\033%s" "$termencoding" >$ttydev$n
|
2011-11-11 08:16:08 +05:30
|
|
|
: $(( n += 1 ))
|
2008-03-27 19:19:49 +05:30
|
|
|
done
|
2011-02-15 05:21:15 +05:30
|
|
|
|
|
|
|
# Save the encoding for use immediately at boot
|
2012-01-29 00:02:05 +05:30
|
|
|
if checkpath -W "$RC_LIBEXECDIR"; then
|
2011-02-15 05:21:15 +05:30
|
|
|
mkdir -p "$RC_LIBEXECDIR"/console
|
|
|
|
if yesno ${unicode:-${UNICODE}}; then
|
|
|
|
echo "" > "$RC_LIBEXECDIR"/console/unicode
|
|
|
|
else
|
|
|
|
rm -f "$RC_LIBEXECDIR"/console/unicode
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2008-03-27 19:19:49 +05:30
|
|
|
eend 0
|
|
|
|
}
|