diff --git a/common.inc b/common.inc index 2476ca5..b641ab2 100644 --- a/common.inc +++ b/common.inc @@ -164,7 +164,7 @@ key - config.keymap { mapkey } if + config.keymap .km.map get { mapkey } if dup 0xffffff and dup { exch } if pop @@ -378,6 +378,11 @@ } if } if + config.keymap .km.name get dup "us" ne { + "kbd-chooser/method=%s " bc.cmd dup length add sprintf + } { + pop + } ifelse } if xmenu.profile { diff --git a/debian/changelog b/debian/changelog index 40f82ca..5b4a66e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,8 @@ gfxboot-theme-ubuntu (0.1.8) UNRELEASED; urgency=low * Allow mapping multiple locales to a single keymap. * Update keymaps and locale-to-keymap mappings from console-keymaps-at 2002.12.04dbs-50ubuntu2. + * If a non-default keymap is selected, put it on the kernel command line + as kbd-chooser/method=%s. -- Colin Watson Fri, 20 Jan 2006 12:06:34 +0000 diff --git a/dia_keymap.inc b/dia_keymap.inc index 840a5cf..7d286d9 100644 --- a/dia_keymap.inc +++ b/dia_keymap.inc @@ -38,7 +38,7 @@ keymap.inited { /keymap.tmp.cnt 0 def keymaps { - .km.map get config.keymap eq { + config.keymap eq { xmenu.keymap .xm_current keymap.tmp.cnt put exit } if /keymap.tmp.cnt inc diff --git a/keytables.inc b/keytables.inc index fc0d3f8..9c96d88 100644 --- a/keytables.inc +++ b/keytables.inc @@ -1340,3 +1340,5 @@ [ "ua" keymap.ua "Ukrainian" [ "uk" ] ] ] def +# for safety +/config.keymap keymaps 0 get def diff --git a/locale.inc b/locale.inc index 593742c..36c792e 100644 --- a/locale.inc +++ b/locale.inc @@ -43,7 +43,7 @@ keymaps { dup .km.locales get { config.keymap.locale eq { - dup .km.map get /config.keymap exch def /setkeymap.found true def exit + dup /config.keymap exch def /setkeymap.found true def exit } if } forall pop diff --git a/scrape-console-keymaps b/scrape-console-keymaps index 31b3230..58b4dca 100755 --- a/scrape-console-keymaps +++ b/scrape-console-keymaps @@ -133,3 +133,8 @@ for my $keymap (sort { $keymaps{$a}[1] cmp $keymaps{$b}[1] } keys %keymaps) { print qq{ [ "$keymap" $keymapfunc{$keymap} "$keymaps{$keymap}[1]" [ $localelist ] ]\n}; } print "] def\n\n"; + +print <