summaryrefslogtreecommitdiffstats
path: root/perl-install/standalone/keyboarddrake
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2002-08-30 12:18:37 +0000
committerPascal Rigaux <pixel@mandriva.com>2002-08-30 12:18:37 +0000
commit5b1193227ce40240183ed1111334994256bfc3a6 (patch)
tree84354e7ddf8d3d4f3d7b8566b57ded3c75020542 /perl-install/standalone/keyboarddrake
parent4edd598855aab2f9cc29c30f3a83342aac384dfe (diff)
downloaddrakx-backup-do-not-use-5b1193227ce40240183ed1111334994256bfc3a6.tar
drakx-backup-do-not-use-5b1193227ce40240183ed1111334994256bfc3a6.tar.gz
drakx-backup-do-not-use-5b1193227ce40240183ed1111334994256bfc3a6.tar.bz2
drakx-backup-do-not-use-5b1193227ce40240183ed1111334994256bfc3a6.tar.xz
drakx-backup-do-not-use-5b1193227ce40240183ed1111334994256bfc3a6.zip
- use keyboard::keyboard2full_xkb
- call setxkbmap with -option and -model - use "/etc/init.d/keytable restart" instead of loadkeys
Diffstat (limited to 'perl-install/standalone/keyboarddrake')
-rwxr-xr-xperl-install/standalone/keyboarddrake13
1 files changed, 5 insertions, 8 deletions
diff --git a/perl-install/standalone/keyboarddrake b/perl-install/standalone/keyboarddrake
index 7940726fa..624422b2a 100755
--- a/perl-install/standalone/keyboarddrake
+++ b/perl-install/standalone/keyboarddrake
@@ -42,20 +42,17 @@ if ($::expert) {
$keyboard->{BACKSPACE} = $isNotDelete ? "BackSpace" : "Delete";
}
-system('loadkeys', keyboard::keyboard2kmap($keyboard));
-
-my $xkb = keyboard::keyboard2xkb($keyboard);
-system('setxkbmap', $xkb);
-
+my $xkb = keyboard::keyboard2full_xkb($keyboard);
+system('setxkbmap', '-option', '') if $xkb->{XkbOptions}; #- need re-initialised other toggles are cumulated
+system('setxkbmap', $xkb->{XkbLayout}, '-model', $xkb->{XkbModel}, '-option', $xkb->{XkbOptions} || '');
eval {
my $xfree_conf = Xconfig::xfree->read;
- my $x_kbd_conf = $xfree_conf->get_keyboard;
- $x_kbd_conf->{XkbLayout} = $xkb;
- $xfree_conf->set_keyboard($x_kbd_conf);
+ $xfree_conf->set_keyboard($xkb);
$xfree_conf->write;
};
keyboard::write($keyboard);
+system('/etc/init.d/keytable', 'restart');
end:
if ($::isEmbedded) {