diff options
Diffstat (limited to 'source/installer/sources/initrd/usr/lib/setup/SeTkeymap')
-rwxr-xr-x | source/installer/sources/initrd/usr/lib/setup/SeTkeymap | 183 |
1 files changed, 15 insertions, 168 deletions
diff --git a/source/installer/sources/initrd/usr/lib/setup/SeTkeymap b/source/installer/sources/initrd/usr/lib/setup/SeTkeymap index e8ac96396..ce1e6d778 100755 --- a/source/installer/sources/initrd/usr/lib/setup/SeTkeymap +++ b/source/installer/sources/initrd/usr/lib/setup/SeTkeymap @@ -1,6 +1,6 @@ #!/bin/sh # Copyright 1993, 1999, 2002 Patrick Volkerding, Moorhead, MN. -# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2009, 2023 Patrick J. Volkerding, Sebeka, MN, USA # Use and redistribution covered by the same terms as the "setup" script. TMP=/var/log/setup/tmp RDIR=/dev/tty4 @@ -8,183 +8,30 @@ if [ ! -d $TMP ]; then mkdir -p $TMP fi while [ 0 ]; do + +# Construct the list of available keymaps: +MAPLIST="$(cd /usr/share/kbd/keymaps/i386 ; find azerty bepo carpalx colemak dvorak fgGIod neo olpc qwerty qwertz | grep / | grep .map.gz$ | rev | cut -f 2- -d . | rev | less | sort | less | sed "s|^|\"|g" | sed "s|$|\" \"\" |g" | tr -d "\n")" + +cat << EOF > $TMP/select_keymap.sh dialog --title "KEYBOARD MAP SELECTION" --menu "You may select one \ of the following keyboard maps. If you do not select a keyboard \ map, 'us.map' (the US keyboard map) is the default. Use the UP/DOWN \ arrow keys and PageUp/PageDown to scroll \ through the whole list of choices." \ 22 55 11 \ -"qwerty/us.map" "" \ -"qwerty/uk.map" "" \ -"azerty/azerty.map" "" \ -"azerty/be-latin1.map" "" \ -"azerty/fr-latin0.map" "" \ -"azerty/fr-latin1.map" "" \ -"azerty/fr-latin9.map" "" \ -"azerty/fr-old.map" "" \ -"azerty/fr-pc.map" "" \ -"azerty/fr.map" "" \ -"azerty/wangbe.map" "" \ -"azerty/wangbe2.map" "" \ -"colemak/en-latin9.map" "" \ -"dvorak/ANSI-dvorak.map" "" \ -"dvorak/dvorak-fr.map" "" \ -"dvorak/dvorak-l.map" "" \ -"dvorak/dvorak-r.map" "" \ -"dvorak/dvorak.map" "" \ -"dvorak/no-dvorak.map" "" \ -"fgGIod/tr_f-latin5.map" "" \ -"fgGIod/trf-fgGIod.map" "" \ -"olpc/es-olpc.map" "" \ -"olpc/pt-olpc.map" "" \ -"qwerty/bashkir.map" "" \ -"qwerty/bg-cp1251.map" "" \ -"qwerty/bg-cp855.map" "" \ -"qwerty/bg_bds-cp1251.map" "" \ -"qwerty/bg_bds-utf8.map" "" \ -"qwerty/bg_pho-cp1251.map" "" \ -"qwerty/bg_pho-utf8.map" "" \ -"qwerty/br-abnt.map" "" \ -"qwerty/br-abnt2.map" "" \ -"qwerty/br-latin1-abnt2.map" "" \ -"qwerty/br-latin1-us.map" "" \ -"qwerty/by-cp1251.map" "" \ -"qwerty/by.map" "" \ -"qwerty/bywin-cp1251.map" "" \ -"qwerty/cf.map" "" \ -"qwerty/cz-cp1250.map" "" \ -"qwerty/cz-lat2-prog.map" "" \ -"qwerty/cz-lat2.map" "" \ -"qwerty/cz-qwerty.map" "" \ -"qwerty/defkeymap.map" "" \ -"qwerty/defkeymap_V1.0.map" "" \ -"qwerty/dk-latin1.map" "" \ -"qwerty/dk.map" "" \ -"qwerty/emacs.map" "" \ -"qwerty/emacs2.map" "" \ -"qwerty/es-cp850.map" "" \ -"qwerty/es.map" "" \ -"qwerty/et-nodeadkeys.map" "" \ -"qwerty/et.map" "" \ -"qwerty/fi-latin1.map" "" \ -"qwerty/fi-latin9.map" "" \ -"qwerty/fi-old.map" "" \ -"qwerty/fi.map" "" \ -"qwerty/gr-pc.map" "" \ -"qwerty/gr.map" "" \ -"qwerty/hu101.map" "" \ -"qwerty/il-heb.map" "" \ -"qwerty/il-phonetic.map" "" \ -"qwerty/il.map" "" \ -"qwerty/is-latin1-us.map" "" \ -"qwerty/is-latin1.map" "" \ -"qwerty/it-ibm.map" "" \ -"qwerty/it.map" "" \ -"qwerty/it2.map" "" \ -"qwerty/jp106.map" "" \ -"qwerty/kazakh.map" "" \ -"qwerty/ky_alt_sh-UTF-8.map" "" \ -"qwerty/kyrgyz.map" "" \ -"qwerty/la-latin1.map" "" \ -"qwerty/lt.baltic.map" "" \ -"qwerty/lt.l4.map" "" \ -"qwerty/lt.map" "" \ -"qwerty/mk-cp1251.map" "" \ -"qwerty/mk-utf.map" "" \ -"qwerty/mk.map" "" \ -"qwerty/mk0.map" "" \ -"qwerty/nl.map" "" \ -"qwerty/nl2.map" "" \ -"qwerty/no-latin1.map" "" \ -"qwerty/no.map" "" \ -"qwerty/pc110.map" "" \ -"qwerty/pl.map" "" \ -"qwerty/pl1.map" "" \ -"qwerty/pl2.map" "" \ -"qwerty/pl3.map" "" \ -"qwerty/pl4.map" "" \ -"qwerty/pt-latin1.map" "" \ -"qwerty/pt-latin9.map" "" \ -"qwerty/pt.map" "" \ -"qwerty/ro.map" "" \ -"qwerty/ro_std.map" "" \ -"qwerty/ru-cp1251.map" "" \ -"qwerty/ru-ms.map" "" \ -"qwerty/ru-yawerty.map" "" \ -"qwerty/ru.map" "" \ -"qwerty/ru1.map" "" \ -"qwerty/ru2.map" "" \ -"qwerty/ru3.map" "" \ -"qwerty/ru4.map" "" \ -"qwerty/ru_win.map" "" \ -"qwerty/ruwin_alt-CP1251.map" "" \ -"qwerty/ruwin_alt-KOI8-R.map" "" \ -"qwerty/ruwin_alt-UTF-8.map" "" \ -"qwerty/ruwin_cplk-CP1251.map" "" \ -"qwerty/ruwin_cplk-KOI8-R.map" "" \ -"qwerty/ruwin_cplk-UTF-8.map" "" \ -"qwerty/ruwin_ct_sh-CP1251.map" "" \ -"qwerty/ruwin_ct_sh-KOI8-R.map" "" \ -"qwerty/ruwin_ct_sh-UTF-8.map" "" \ -"qwerty/ruwin_ctrl-CP1251.map" "" \ -"qwerty/ruwin_ctrl-KOI8-R.map" "" \ -"qwerty/ruwin_ctrl-UTF-8.map" "" \ -"qwerty/se-fi-ir209.map" "" \ -"qwerty/se-fi-lat6.map" "" \ -"qwerty/se-ir209.map" "" \ -"qwerty/se-lat6.map" "" \ -"qwerty/se-latin1.map" "" \ -"qwerty/sk-prog-qwerty.map" "" \ -"qwerty/sk-qwerty.map" "" \ -"qwerty/speakup-jfw.map" "" \ -"qwerty/speakupmap.map" "" \ -"qwerty/sr-cy.map" "" \ -"qwerty/sv-latin1.map" "" \ -"qwerty/tj_alt-UTF8.map" "" \ -"qwerty/tr_q-latin5.map" "" \ -"qwerty/tralt.map" "" \ -"qwerty/trf.map" "" \ -"qwerty/trq.map" "" \ -"qwerty/ttwin_alt-UTF-8.map" "" \ -"qwerty/ttwin_cplk-UTF-8.map" "" \ -"qwerty/ttwin_ct_sh-UTF-8.map" "" \ -"qwerty/ttwin_ctrl-UTF-8.map" "" \ -"qwerty/ua-cp1251.map" "" \ -"qwerty/ua-utf-ws.map" "" \ -"qwerty/ua-utf.map" "" \ -"qwerty/ua-ws.map" "" \ -"qwerty/ua.map" "" \ -"qwerty/uk.map" "" \ -"qwerty/us-acentos.map" "" \ -"qwerty/us.map" "" \ -"qwertz/croat.map" "" \ -"qwertz/cz-us-qwertz.map" "" \ -"qwertz/cz.map" "" \ -"qwertz/de-latin1-nodeadkeys.map" "" \ -"qwertz/de-latin1.map" "" \ -"qwertz/de-mobii.map" "" \ -"qwertz/de.map" "" \ -"qwertz/de_CH-latin1.map" "" \ -"qwertz/de_alt_UTF-8.map" "" \ -"qwertz/fr_CH-latin1.map" "" \ -"qwertz/fr_CH.map" "" \ -"qwertz/hu.map" "" \ -"qwertz/sg-latin1-lk450.map" "" \ -"qwertz/sg-latin1.map" "" \ -"qwertz/sg.map" "" \ -"qwertz/sk-prog-qwertz.map" "" \ -"qwertz/sk-qwertz.map" "" \ -"qwertz/slovene.map" "" \ +"qwerty/us.map" "" "qwerty/uk.map" "" $MAPLIST \ 2> $TMP/SeTkeymap +EOF + sh $TMP/select_keymap.sh if [ ! $? = 0 ]; then - rm -f $TMP/SeTkeymap + rm -f $TMP/SeTkeymap $TMP/select_keymap.sh exit fi - MAPNAME="`cat $TMP/SeTkeymap`" - MAPNAME="`basename $MAPNAME`" + rm -f $TMP/select_keymap.sh + MAPNAME="$(cat $TMP/SeTkeymap)" + MAPNAME="$(basename $MAPNAME)" echo $MAPNAME > $TMP/SeTkeymap - BMAP="`basename $MAPNAME .map`.bmap" - tar xzOf /etc/keymaps.tar.gz $BMAP > /dev/null && tar xzOf /etc/keymaps.tar.gz $BMAP | loadkmap + loadkeys -q $MAPNAME while [ 0 ]; do # Match the dialog colors a little while doing the keyboard test: @@ -214,7 +61,7 @@ EOF rm -f $TMP/$MAPNAME rm -f $TMP/SeTkeymap $TMP/Pkeymap # Clear bad selection: - tar xzOf /etc/keymaps.tar.gz us.bmap > /dev/null && tar xzOf /etc/keymaps.tar.gz us.bmap | loadkmap + loadkeys -q us.map continue; fi done |