From b2093f6c9d4f039e7944aebfb6b5c558218dabc6 Mon Sep 17 00:00:00 2001 From: Thomas Bächler Date: Tue, 12 Jan 2010 22:13:33 +0100 Subject: Add keymap hook --- hooks/keymap | 15 +++++++++++++++ install/keymap | 29 +++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 hooks/keymap create mode 100644 install/keymap diff --git a/hooks/keymap b/hooks/keymap new file mode 100644 index 0000000..fd53f5f --- /dev/null +++ b/hooks/keymap @@ -0,0 +1,15 @@ +# vim: set ft=sh: +run_hook () +{ + msg -n ":: Loading keymap..." + . /keymap.utf8 + if [ "${UTF8}" = "yes" ]; then + /usr/bin/kbd_mode -u -C /dev/console + printf "\033%%G" >> /dev/console + else + /usr/bin/kbd_mode -a -C /dev/console + printf "\033%%@" >> /dev/console + fi + /sbin/loadkmap < /keymap.bin + msg "done." +} diff --git a/install/keymap b/install/keymap new file mode 100644 index 0000000..cb64e69 --- /dev/null +++ b/install/keymap @@ -0,0 +1,29 @@ +# vim: set ft=sh: + +install () +{ + MODULES="" + BINARIES="" + FILES="" + SCRIPT="keymap" + KEYMAP_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)" + UTF8_FILE="$(mktemp ${TMPDIR}/keymap.XXXXXX)" + eval "$(grep -e "^LOCALE=" -e "^KEYMAP=" -e "^CONSOLEFONT=" -e "^CONSOLEMAP=" /etc/rc.conf)" + if [ -n "$(echo ${LOCALE} | grep -i utf)" ]; then + echo "UTF8='yes'" >> ${KEYMAP_FILE} + /bin/loadkeys -q -u $KEYMAP -b > ${KEYMAP_FILE} + else + echo "UTF8='no'" >> ${KEYMAP_FILE} + /bin/loadkeys -q $KEYMAP -b > ${KEYMAP_FILE} + fi + add_file ${KEYMAP_FILE} /keymap.bin + add_file ${UTF8_FILE} /keymap.utf8 +} + +help () +{ +cat<