summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/kbd
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core-testing/kbd')
-rw-r--r--abs/core-testing/kbd/PKGBUILD34
-rw-r--r--abs/core-testing/kbd/kbd-1.12-alias.patch47
-rw-r--r--abs/core-testing/kbd/kbd-1.12-find_map_fix.patch37
-rw-r--r--abs/core-testing/kbd/kbd-1.12-no-user-map.patch19
-rw-r--r--abs/core-testing/kbd/keymap_hook21
-rw-r--r--abs/core-testing/kbd/keymap_install44
-rw-r--r--abs/core-testing/kbd/rename-duplicates.patch830
7 files changed, 1032 insertions, 0 deletions
diff --git a/abs/core-testing/kbd/PKGBUILD b/abs/core-testing/kbd/PKGBUILD
new file mode 100644
index 0000000..bbc68f7
--- /dev/null
+++ b/abs/core-testing/kbd/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+
+pkgname=kbd
+pkgver=1.14.1.20080309
+pkgrel=11
+pkgdesc="Keytable files and keyboard utilities"
+arch=('i686' 'x86_64')
+url="ftp://ftp.altlinux.org/pub/people/legion/kbd/"
+license=('GPL')
+groups=('base')
+depends=('glibc')
+source=(ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz
+ #ftp://ftp.altlinux.org/pub/people/legion/kbd/${pkgname}-${pkgver}.tar.gz
+ rename-duplicates.patch)
+md5sums=('76e817f11c6ec80d9fc9f3f7ace79b4a'
+ 'bd2d9f88141a8e78baaa4982f1d1f6c5')
+
+build() {
+ cd ${startdir}/src
+ #cd ${startdir}/src/${pkgname}-${pkgver}
+ patch -Np1 -i rename-duplicates.patch || return 1
+
+ autoconf
+ ./configure --prefix=/usr --datadir=/usr/share/kbd --mandir=/usr/share/man
+ make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes || return 1
+ make KEYCODES_PROGS=yes RESIZECONS_PROGS=yes DESTDIR=${startdir}/pkg install
+
+ # this is needed because initscripts call /bin/loadkeys
+ # remove this when next versions of kbd
+ # and initscripts with /usr/bin/loadkeys usage will be released
+ mkdir ${startdir}/pkg/bin
+ ln -s /usr/bin/loadkeys ${startdir}/pkg/bin/loadkeys
+}
diff --git a/abs/core-testing/kbd/kbd-1.12-alias.patch b/abs/core-testing/kbd/kbd-1.12-alias.patch
new file mode 100644
index 0000000..30be4fa
--- /dev/null
+++ b/abs/core-testing/kbd/kbd-1.12-alias.patch
@@ -0,0 +1,47 @@
+diff -u kbd-1.12/src/psffontop.c kbd-1.12/src/psffontop.c
+--- kbd-1.12/src/psffontop.c 2005-03-12 00:48:30.075310872 +0100
++++ kbd-1.12/src/psffontop.c 2005-05-14 10:49:59.000000000 +0900
+@@ -59,7 +59,6 @@
+
+ static unsigned int
+ assemble_ucs2(char **inptr, int cnt) {
+- unsigned char **in = (unsigned char **) inptr;
+ unsigned int u1, u2;
+
+ if (cnt < 2) {
+@@ -68,8 +67,8 @@
+ exit(EX_DATAERR);
+ }
+
+- u1 = *(*in)++;
+- u2 = *(*in)++;
++ u1 = (unsigned char)*(*inptr)++;
++ u2 = (unsigned char)*(*inptr)++;
+ return (u1 | (u2 << 8));
+ }
+
+@@ -110,7 +109,6 @@
+ */
+ static void
+ get_uni_entry(char **inptr, char **endptr, struct unicode_list *up, int utf8) {
+- unsigned char **in = (unsigned char **) inptr;
+ unsigned char uc;
+ unicode unichar;
+ int inseq = 0;
+@@ -126,14 +124,14 @@
+ exit(EX_DATAERR);
+ }
+ if (utf8) {
+- uc = *(*in)++;
++ uc = *(*inptr)++;
+ if (uc == PSF2_SEPARATOR)
+ break;
+ if (uc == PSF2_STARTSEQ) {
+ inseq = 1;
+ continue;
+ }
+- --(*in);
++ --(*inptr);
+ unichar = assemble_utf8(inptr, *endptr - *inptr);
+ } else {
+ unichar = assemble_ucs2(inptr, *endptr - *inptr);
diff --git a/abs/core-testing/kbd/kbd-1.12-find_map_fix.patch b/abs/core-testing/kbd/kbd-1.12-find_map_fix.patch
new file mode 100644
index 0000000..ca24703
--- /dev/null
+++ b/abs/core-testing/kbd/kbd-1.12-find_map_fix.patch
@@ -0,0 +1,37 @@
+Oh, but I fixed it already. Patch below.
+
+Andries
+
+--- kbd-1.12.orig/src/findfile.c Fri Jan 16 20:45:31 2004
++++ kbd-1.12/src/findfile.c Wed Jan 28 23:29:35 2004
+@@ -70,6 +70,7 @@
+ FILE *fp = NULL;
+ DIR *d;
+ struct dirent *de;
++ struct stat statbuf;
+ char *ff, *fdir, *p, *q, **sp;
+ struct decompressor *dc;
+ int secondpass = 0;
+@@ -104,7 +105,6 @@
+ okdir = (ff && strcmp(de->d_name, fdir) == 0);
+
+ if ((secondpass && recdepth) || okdir) {
+- struct stat statbuf;
+ char *a;
+
+ a = xmalloc(strlen(dir) + strlen(de->d_name) + 2);
+@@ -137,6 +137,11 @@
+
+ sprintf(pathname, "%s/%s", dir, de->d_name);
+
++ /* Is this a regular file? */
++ if (stat(pathname, &statbuf) != 0 ||
++ !S_ISREG(statbuf.st_mode))
++ continue;
++
+ /* Does tail consist of a known suffix and possibly
+ a compression suffix? */
+ for(sp = suf; *sp; sp++) {
+
+
+[pasted and cut from another window, so with whitespace damage]
diff --git a/abs/core-testing/kbd/kbd-1.12-no-user-map.patch b/abs/core-testing/kbd/kbd-1.12-no-user-map.patch
new file mode 100644
index 0000000..f246228
--- /dev/null
+++ b/abs/core-testing/kbd/kbd-1.12-no-user-map.patch
@@ -0,0 +1,19 @@
+Non-root users are allowed to change the unicode mode of their console, but
+not the global keymap. root will have to load the keymap in unicode mode
+explicitly.
+
+--- kbd-1.12/src/unicode_start.no-user-map 2005-12-01 19:33:19.000000000 +0100
++++ kbd-1.12/src/unicode_start 2005-12-01 19:33:28.000000000 +0100
+@@ -14,12 +14,6 @@
+
+ kbd_mode -u
+
+-# Change the keyboard mapping in such a way that the non-ASCII keys
+-# produce UTF-8 encoded multibyte sequences, instead of single bytes
+-# >= 0x80 in a legacy 8-bit encoding.
+-
+-dumpkeys | loadkeys --unicode
+-
+ # 2. The output side: the console screen.
+
+ # Tell the console output driver that the bytes arriving are UTF-8
diff --git a/abs/core-testing/kbd/keymap_hook b/abs/core-testing/kbd/keymap_hook
new file mode 100644
index 0000000..414338b
--- /dev/null
+++ b/abs/core-testing/kbd/keymap_hook
@@ -0,0 +1,21 @@
+# vim: set ft=sh:
+run_hook ()
+{
+ msg -n ":: Loading keymap..."
+ . /keymap
+ if [ "$KEYMAP" != "" ]; then
+ /bin/loadkeys -q $KEYMAP
+ fi
+ # If locale is *.utf set console to Unicode mode
+ if [ "$UTF8" = "yes" ]; then
+ /bin/kbd_mode -u
+ /bin/dumpkeys | /bin/loadkeys --unicode
+ echo -ne "\e%G" >> /dev/console
+ fi
+ if [ "$CONSOLEMAP" != "" ]; then
+ /bin/setfont -m $CONSOLEMAP $CONSOLEFONT -C /dev/console
+ else
+ /bin/setfont $CONSOLEFONT -C /dev/console
+ fi
+ msg "done."
+}
diff --git a/abs/core-testing/kbd/keymap_install b/abs/core-testing/kbd/keymap_install
new file mode 100644
index 0000000..0518802
--- /dev/null
+++ b/abs/core-testing/kbd/keymap_install
@@ -0,0 +1,44 @@
+# vim: set ft=sh:
+
+install ()
+{
+ MODULES=""
+ BINARIES=""
+ FILES=""
+ SCRIPT="keymap"
+ KEYMAP_FILE="$(mktemp /tmp/keymap.XXXXXX)"
+ add_file /bin/loadkeys.static /bin/loadkeys
+ add_file /usr/bin/dumpkeys.static /bin/dumpkeys
+ add_file /usr/bin/kbd_mode.static /bin/kdb_mode
+ add_file /usr/bin/setfont.static /bin/setfont
+ grep "KEYMAP=" /etc/rc.conf >> ${KEYMAP_FILE}
+ grep "CONSOLEFONT=" /etc/rc.conf >> ${KEYMAP_FILE}
+ grep "CONSOLEMAP=" /etc/rc.conf >> ${KEYMAP_FILE}
+ if [ "$(echo $LOCALE | /bin/grep -i utf)" != "" ]; then
+ echo UTF8="yes" >> ${KEYMAP_FILE}
+ fi
+ . ${KEYMAP_FILE}
+ add_file ${KEYMAP_FILE} /keymap
+ [ "$CONSOLEFONT" != "" ] && add_file /usr/share/kbd/consolefonts/$(grep "CONSOLEFONT=" /etc/rc.conf | awk -FCONSOLEFONT= '{print $2}' | sed -e "s@[\"']*@@g")*
+ [ "$CONSOLEMAP" != "" ] && add_file /usr/share/kbd/unimaps/$(grep "CONSOLEMAP=" /etc/rc.conf | awk -FCONSOLEMAP= '{print $2}' | sed -e "s@[\"']*@@g")*
+ if [ "$KEYMAP" != "" ]; then
+ for i in $(find /usr/share/kbd/ -name "$(grep "KEYMAP=" /etc/rc.conf |\
+ awk -FKEYMAP= '{print $2}' | awk -F- '{print $1}' | sed -e "s@[\"']*@@g")*.map.gz"); do
+ add_file $i
+ done
+ for i in $(echo /usr/share/kbd/keymaps/include/*); do
+ add_file $i
+ done
+ for i in $(echo /usr/share/kbd/keymaps/*/include/*); do
+ add_file $i
+ done
+ fi
+}
+
+help ()
+{
+cat<<HELPEOF
+ This hook loads the specified keymap and consolefont from rc.conf,
+ during early userspace.
+HELPEOF
+}
diff --git a/abs/core-testing/kbd/rename-duplicates.patch b/abs/core-testing/kbd/rename-duplicates.patch
new file mode 100644
index 0000000..a8b70fe
--- /dev/null
+++ b/abs/core-testing/kbd/rename-duplicates.patch
@@ -0,0 +1,830 @@
+From 22cc5a37e41a8937747f3416a45e923e853fc452 Mon Sep 17 00:00:00 2001
+From: Roman Kyrylych <roman@archlinux.org>
+Date: Sat, 15 Mar 2008 20:38:42 +0200
+Subject: [PATCH] Rename keymaps with same filenames
+
+Signed-off-by: Roman Kyrylych <roman@archlinux.org>
+---
+ data/keymaps/i386/dvorak/no-dvorak.map | 104 +++++++++++++++++++++++++
+ data/keymaps/i386/dvorak/no.map | 104 -------------------------
+ data/keymaps/i386/fgGIod/trf-fgGIod.map | 125 +++++++++++++++++++++++++++++++
+ data/keymaps/i386/fgGIod/trf.map | 125 -------------------------------
+ data/keymaps/i386/olpc/es-olpc.map | 80 ++++++++++++++++++++
+ data/keymaps/i386/olpc/es.map | 80 --------------------
+ data/keymaps/i386/olpc/pt-olpc.map | 68 +++++++++++++++++
+ data/keymaps/i386/olpc/pt.map | 68 -----------------
+ 8 files changed, 377 insertions(+), 377 deletions(-)
+ create mode 100644 data/keymaps/i386/dvorak/no-dvorak.map
+ delete mode 100644 data/keymaps/i386/dvorak/no.map
+ create mode 100644 data/keymaps/i386/fgGIod/trf-fgGIod.map
+ delete mode 100644 data/keymaps/i386/fgGIod/trf.map
+ create mode 100644 data/keymaps/i386/olpc/es-olpc.map
+ delete mode 100644 data/keymaps/i386/olpc/es.map
+ create mode 100644 data/keymaps/i386/olpc/pt-olpc.map
+ delete mode 100644 data/keymaps/i386/olpc/pt.map
+
+diff --git a/data/keymaps/i386/dvorak/no-dvorak.map b/data/keymaps/i386/dvorak/no-dvorak.map
+new file mode 100644
+index 0000000..2f15c57
+--- /dev/null
++++ b/data/keymaps/i386/dvorak/no-dvorak.map
+@@ -0,0 +1,104 @@
++# Date: Sun, 10 Feb 2008 10:56:47 +0100
++# From: "Thomas Geirhovd" <thomas@tg90nor.net>
++# Subject: Norwegian dvorak keymap
++#
++# Hi,
++#
++# I made a norwegian dvorak keymap for the console.
++# It can be found on http://www.tg90nor.net/no-dvorak.map.gz
++# Feel free to include it in kbd if you want to.
++#
++# --
++# Regards,
++# Thomas Geirhovd
++#
++keymaps 0-2,4-6,8-9,12
++alt_is_meta
++include "linux-with-alt-and-altgr.inc"
++strings as usual
++
++ keycode 1 = Escape
++ alt keycode 1 = Meta_Escape
++ keycode 2 = one exclam
++ alt keycode 2 = Meta_one
++ keycode 3 = two quotedbl at
++ control keycode 3 = nul
++ alt keycode 3 = Meta_two
++ keycode 4 = three numbersign
++ control keycode 4 = Escape
++ alt keycode 4 = Meta_three
++ keycode 5 = four dollar dollar
++ control keycode 5 = Control_backslash
++ alt keycode 5 = Meta_four
++ keycode 6 = five percent
++ control keycode 6 = Control_bracketright
++ alt keycode 6 = Meta_five
++ keycode 7 = six ampersand
++ control keycode 7 = Control_asciicircum
++ alt keycode 7 = Meta_six
++ keycode 8 = seven slash braceleft
++ control keycode 8 = Control_underscore
++ alt keycode 8 =Meta_seven
++ keycode 9 = eight parenleft bracketleft
++ control keycode 9 = Delete
++ alt keycode 9 = Meta_eight
++ keycode 10 = nine parenright bracketright
++ alt keycode 10 = Meta_nine
++ keycode 11 = zero equal braceright
++ alt keycode 11 = Meta_zero
++ keycode 12 = plus question
++ control keycode 12 = Control_underscore
++ alt keycode 12 = Meta_minus
++ keycode 13 = backslash grave apostrophe
++ alt keycode 13 = Meta_equal
++ keycode 14 = Delete
++ alt keycode 14 = Meta_Delete
++ keycode 15 = Tab
++ shift keycode 15 = Meta_Tab
++ keycode 16 = +aring +Aring
++ keycode 17 = comma semicolon
++ keycode 18 = period colon
++ keycode 19 = p
++ keycode 20 = y
++ keycode 21 = f
++ keycode 22 = g
++ keycode 23 = c
++ keycode 24 = r
++ keycode 25 = l
++ keycode 26 = apostrophe asterisk
++ keycode 27 = asciitilde asciicircum
++ keycode 28 = Return
++ alt keycode 28 = Meta_Control_m
++ keycode 29 = Control
++ keycode 30 = a
++ keycode 31 = o
++ keycode 32 = e
++ keycode 33 = u
++ keycode 34 = i
++ keycode 35 = d
++ keycode 36 = h
++ keycode 37 = t
++ keycode 38 = n
++ keycode 39 = s
++ keycode 40 = minus underscore
++ keycode 41 = bar section
++ control keycode 41 = nul
++keycode 42 = Shift
++keycode 43 = less greater
++keycode 44 = +ae +AE
++keycode 45 = q
++keycode 46 = j
++keycode 47 = k
++keycode 48 = x
++keycode 49 = b
++keycode 50 = m
++keycode 51 = w
++keycode 52 = v
++keycode 53 = z
++keycode 54 = Shift
++keycode 56 = Alt
++ keycode 57 = space
++ control keycode 57 = nul
++ keycode 58 = Caps_Lock
++ keycode 86 = +oslash +Ooblique
++keycode 97 = Control
+diff --git a/data/keymaps/i386/dvorak/no.map b/data/keymaps/i386/dvorak/no.map
+deleted file mode 100644
+index 2f15c57..0000000
+--- a/data/keymaps/i386/dvorak/no.map
++++ /dev/null
+@@ -1,104 +0,0 @@
+-# Date: Sun, 10 Feb 2008 10:56:47 +0100
+-# From: "Thomas Geirhovd" <thomas@tg90nor.net>
+-# Subject: Norwegian dvorak keymap
+-#
+-# Hi,
+-#
+-# I made a norwegian dvorak keymap for the console.
+-# It can be found on http://www.tg90nor.net/no-dvorak.map.gz
+-# Feel free to include it in kbd if you want to.
+-#
+-# --
+-# Regards,
+-# Thomas Geirhovd
+-#
+-keymaps 0-2,4-6,8-9,12
+-alt_is_meta
+-include "linux-with-alt-and-altgr.inc"
+-strings as usual
+-
+- keycode 1 = Escape
+- alt keycode 1 = Meta_Escape
+- keycode 2 = one exclam
+- alt keycode 2 = Meta_one
+- keycode 3 = two quotedbl at
+- control keycode 3 = nul
+- alt keycode 3 = Meta_two
+- keycode 4 = three numbersign
+- control keycode 4 = Escape
+- alt keycode 4 = Meta_three
+- keycode 5 = four dollar dollar
+- control keycode 5 = Control_backslash
+- alt keycode 5 = Meta_four
+- keycode 6 = five percent
+- control keycode 6 = Control_bracketright
+- alt keycode 6 = Meta_five
+- keycode 7 = six ampersand
+- control keycode 7 = Control_asciicircum
+- alt keycode 7 = Meta_six
+- keycode 8 = seven slash braceleft
+- control keycode 8 = Control_underscore
+- alt keycode 8 =Meta_seven
+- keycode 9 = eight parenleft bracketleft
+- control keycode 9 = Delete
+- alt keycode 9 = Meta_eight
+- keycode 10 = nine parenright bracketright
+- alt keycode 10 = Meta_nine
+- keycode 11 = zero equal braceright
+- alt keycode 11 = Meta_zero
+- keycode 12 = plus question
+- control keycode 12 = Control_underscore
+- alt keycode 12 = Meta_minus
+- keycode 13 = backslash grave apostrophe
+- alt keycode 13 = Meta_equal
+- keycode 14 = Delete
+- alt keycode 14 = Meta_Delete
+- keycode 15 = Tab
+- shift keycode 15 = Meta_Tab
+- keycode 16 = +aring +Aring
+- keycode 17 = comma semicolon
+- keycode 18 = period colon
+- keycode 19 = p
+- keycode 20 = y
+- keycode 21 = f
+- keycode 22 = g
+- keycode 23 = c
+- keycode 24 = r
+- keycode 25 = l
+- keycode 26 = apostrophe asterisk
+- keycode 27 = asciitilde asciicircum
+- keycode 28 = Return
+- alt keycode 28 = Meta_Control_m
+- keycode 29 = Control
+- keycode 30 = a
+- keycode 31 = o
+- keycode 32 = e
+- keycode 33 = u
+- keycode 34 = i
+- keycode 35 = d
+- keycode 36 = h
+- keycode 37 = t
+- keycode 38 = n
+- keycode 39 = s
+- keycode 40 = minus underscore
+- keycode 41 = bar section
+- control keycode 41 = nul
+-keycode 42 = Shift
+-keycode 43 = less greater
+-keycode 44 = +ae +AE
+-keycode 45 = q
+-keycode 46 = j
+-keycode 47 = k
+-keycode 48 = x
+-keycode 49 = b
+-keycode 50 = m
+-keycode 51 = w
+-keycode 52 = v
+-keycode 53 = z
+-keycode 54 = Shift
+-keycode 56 = Alt
+- keycode 57 = space
+- control keycode 57 = nul
+- keycode 58 = Caps_Lock
+- keycode 86 = +oslash +Ooblique
+-keycode 97 = Control
+diff --git a/data/keymaps/i386/fgGIod/trf-fgGIod.map b/data/keymaps/i386/fgGIod/trf-fgGIod.map
+new file mode 100644
+index 0000000..1061d11
+--- /dev/null
++++ b/data/keymaps/i386/fgGIod/trf-fgGIod.map
+@@ -0,0 +1,125 @@
++charset "iso-8859-9"
++keymaps 0-6,8-9,12
++include "linux-with-alt-and-altgr"
++strings as usual
++
++keycode 1 = Escape Escape
++ alt keycode 1 = Meta_Escape
++keycode 2 = one exclam asciitilde
++ alt keycode 2 = Meta_one
++ alt shift keycode 2 = Meta_exclam
++keycode 3 = two at ampersand
++ control keycode 3 = nul
++ control shift keycode 3 = nul
++ alt keycode 3 = Meta_two
++ alt shift keycode 3 = Meta_at
++keycode 4 = three quotedbl numbersign
++ control keycode 4 = Escape
++ alt keycode 4 = Meta_three
++ alt shift keycode 4 = Meta_quotedbl
++keycode 5 = four apostrophe dollar
++ control keycode 5 = Control_backslash
++ alt keycode 5 = Meta_four
++ alt shift keycode 5 = Meta_apostrophe
++keycode 6 = five parenleft less
++ control keycode 6 = Control_bracketright
++ alt keycode 6 = Meta_five
++ alt shift keycode 6 = Meta_parenleft
++keycode 7 = six slash greater
++ control keycode 7 = Control_asciicircum
++ alt keycode 7 = Meta_six
++ alt shift keycode 7 = Meta_slash
++keycode 8 = seven parenright braceleft
++ control keycode 8 = Control_underscore
++ alt keycode 8 = Meta_seven
++ alt shift keycode 8 = Meta_parenright
++keycode 9 = eight underscore braceright
++ control keycode 9 = Delete
++ alt keycode 9 = Meta_eight
++ alt shift keycode 9 = Meta_underscore
++keycode 10 = nine percent bracketleft
++ alt keycode 10 = Meta_nine
++ alt shift keycode 10 = Meta_percent
++keycode 11 = zero colon bracketright
++ alt keycode 11 = Meta_zero
++ alt shift keycode 11 = Meta_colon
++keycode 12 = x
++keycode 13 = q
++keycode 14 = Delete Delete
++ alt keycode 14 = Meta_Delete
++keycode 15 = Tab
++ shift keycode 15 = Meta_Tab
++ alt keycode 15 = Meta_Tab
++keycode 16 = f
++keycode 17 = g
++keycode 18 = +0360 +0320
++keycode 19 = +0375 +I
++ altgr keycode 19 = +0356
++ altgr shift keycode 19 = +0316
++keycode 20 = o
++ altgr keycode 20 = +0364
++ altgr shift keycode 20 = +0324
++keycode 21 = d
++keycode 22 = r
++keycode 23 = n
++keycode 24 = h
++keycode 25 = p
++keycode 26 = semicolon asterisk
++ control keycode 26 = Escape
++ alt keycode 26 = Meta_semicolon
++ alt shift keycode 26 = Meta_asterisk
++keycode 27 = asciicircum grave
++ control keycode 27 = Control_bracketright
++ alt keycode 27 = Meta_asciicircum
++ alt shift keycode 27 = Meta_grave
++keycode 28 = Return
++ alt keycode 28 = 0x080d
++keycode 29 = Control
++keycode 30 = u
++ altgr keycode 30 = +0373
++ altgr shift keycode 30 = +0333
++keycode 31 = +i +0335
++keycode 32 = e
++keycode 33 = a
++ altgr keycode 33 = +0342
++ altgr shift keycode 33 = +0302
++keycode 34 = +0374 +0334
++keycode 35 = t
++keycode 36 = k
++keycode 37 = m
++keycode 38 = l
++keycode 39 = y
++keycode 40 = +0376 +0336
++ control keycode 40 = Control_g
++keycode 41 = w
++ control keycode 41 = nul
++keycode 42 = Shift
++keycode 43 = equal plus
++ control keycode 43 = Control_backslash
++ alt keycode 43 = Meta_equal
++ alt shift keycode 43 = Meta_plus
++keycode 44 = j
++keycode 45 = +0366 +0326
++keycode 46 = v
++keycode 47 = c
++keycode 48 = +0347 +0307
++keycode 49 = z
++keycode 50 = s
++keycode 51 = b
++keycode 52 = period question
++ control keycode 52 = Delete
++ alt keycode 52 = Meta_period
++ alt shift keycode 52 = Meta_question
++keycode 53 = comma minus slash
++ alt keycode 53 = Meta_comma
++ alt shift keycode 53 = Meta_minus
++keycode 54 = Shift
++keycode 56 = Alt
++keycode 57 = space
++ control keycode 57 = nul
++ alt keycode 57 = Meta_space
++keycode 58 = Caps_Lock
++keycode 86 = backslash bar
++ alt keycode 86 = Meta_backslash
++ alt shift keycode 86 = Meta_bar
++keycode 97 = Control
+diff --git a/data/keymaps/i386/fgGIod/trf.map b/data/keymaps/i386/fgGIod/trf.map
+deleted file mode 100644
+index 1061d11..0000000
+--- a/data/keymaps/i386/fgGIod/trf.map
++++ /dev/null
+@@ -1,125 +0,0 @@
+-charset "iso-8859-9"
+-keymaps 0-6,8-9,12
+-include "linux-with-alt-and-altgr"
+-strings as usual
+-
+-keycode 1 = Escape Escape
+- alt keycode 1 = Meta_Escape
+-keycode 2 = one exclam asciitilde
+- alt keycode 2 = Meta_one
+- alt shift keycode 2 = Meta_exclam
+-keycode 3 = two at ampersand
+- control keycode 3 = nul
+- control shift keycode 3 = nul
+- alt keycode 3 = Meta_two
+- alt shift keycode 3 = Meta_at
+-keycode 4 = three quotedbl numbersign
+- control keycode 4 = Escape
+- alt keycode 4 = Meta_three
+- alt shift keycode 4 = Meta_quotedbl
+-keycode 5 = four apostrophe dollar
+- control keycode 5 = Control_backslash
+- alt keycode 5 = Meta_four
+- alt shift keycode 5 = Meta_apostrophe
+-keycode 6 = five parenleft less
+- control keycode 6 = Control_bracketright
+- alt keycode 6 = Meta_five
+- alt shift keycode 6 = Meta_parenleft
+-keycode 7 = six slash greater
+- control keycode 7 = Control_asciicircum
+- alt keycode 7 = Meta_six
+- alt shift keycode 7 = Meta_slash
+-keycode 8 = seven parenright braceleft
+- control keycode 8 = Control_underscore
+- alt keycode 8 = Meta_seven
+- alt shift keycode 8 = Meta_parenright
+-keycode 9 = eight underscore braceright
+- control keycode 9 = Delete
+- alt keycode 9 = Meta_eight
+- alt shift keycode 9 = Meta_underscore
+-keycode 10 = nine percent bracketleft
+- alt keycode 10 = Meta_nine
+- alt shift keycode 10 = Meta_percent
+-keycode 11 = zero colon bracketright
+- alt keycode 11 = Meta_zero
+- alt shift keycode 11 = Meta_colon
+-keycode 12 = x
+-keycode 13 = q
+-keycode 14 = Delete Delete
+- alt keycode 14 = Meta_Delete
+-keycode 15 = Tab
+- shift keycode 15 = Meta_Tab
+- alt keycode 15 = Meta_Tab
+-keycode 16 = f
+-keycode 17 = g
+-keycode 18 = +0360 +0320
+-keycode 19 = +0375 +I
+- altgr keycode 19 = +0356
+- altgr shift keycode 19 = +0316
+-keycode 20 = o
+- altgr keycode 20 = +0364
+- altgr shift keycode 20 = +0324
+-keycode 21 = d
+-keycode 22 = r
+-keycode 23 = n
+-keycode 24 = h
+-keycode 25 = p
+-keycode 26 = semicolon asterisk
+- control keycode 26 = Escape
+- alt keycode 26 = Meta_semicolon
+- alt shift keycode 26 = Meta_asterisk
+-keycode 27 = asciicircum grave
+- control keycode 27 = Control_bracketright
+- alt keycode 27 = Meta_asciicircum
+- alt shift keycode 27 = Meta_grave
+-keycode 28 = Return
+- alt keycode 28 = 0x080d
+-keycode 29 = Control
+-keycode 30 = u
+- altgr keycode 30 = +0373
+- altgr shift keycode 30 = +0333
+-keycode 31 = +i +0335
+-keycode 32 = e
+-keycode 33 = a
+- altgr keycode 33 = +0342
+- altgr shift keycode 33 = +0302
+-keycode 34 = +0374 +0334
+-keycode 35 = t
+-keycode 36 = k
+-keycode 37 = m
+-keycode 38 = l
+-keycode 39 = y
+-keycode 40 = +0376 +0336
+- control keycode 40 = Control_g
+-keycode 41 = w
+- control keycode 41 = nul
+-keycode 42 = Shift
+-keycode 43 = equal plus
+- control keycode 43 = Control_backslash
+- alt keycode 43 = Meta_equal
+- alt shift keycode 43 = Meta_plus
+-keycode 44 = j
+-keycode 45 = +0366 +0326
+-keycode 46 = v
+-keycode 47 = c
+-keycode 48 = +0347 +0307
+-keycode 49 = z
+-keycode 50 = s
+-keycode 51 = b
+-keycode 52 = period question
+- control keycode 52 = Delete
+- alt keycode 52 = Meta_period
+- alt shift keycode 52 = Meta_question
+-keycode 53 = comma minus slash
+- alt keycode 53 = Meta_comma
+- alt shift keycode 53 = Meta_minus
+-keycode 54 = Shift
+-keycode 56 = Alt
+-keycode 57 = space
+- control keycode 57 = nul
+- alt keycode 57 = Meta_space
+-keycode 58 = Caps_Lock
+-keycode 86 = backslash bar
+- alt keycode 86 = Meta_backslash
+- alt shift keycode 86 = Meta_bar
+-keycode 97 = Control
+diff --git a/data/keymaps/i386/olpc/es-olpc.map b/data/keymaps/i386/olpc/es-olpc.map
+new file mode 100644
+index 0000000..e97caeb
+--- /dev/null
++++ b/data/keymaps/i386/olpc/es-olpc.map
+@@ -0,0 +1,80 @@
++! Spanish keymap for OLPC; based upon es.map
++! Walter Bender (3 January 2008)
++!
++charset "iso-8859-15"
++keymaps 0-2,4,6,8-9,12
++include "qwerty-layout"
++include "linux-with-alt-and-altgr"
++strings as usual
++
++keycode 1 = Escape
++ alt keycode 1 = Meta_Escape
++keycode 2 = one exclam bar
++ alt keycode 2 = Meta_one
++keycode 3 = two quotedbl at
++ control keycode 3 = nul
++ alt keycode 3 = Meta_two
++keycode 4 = three grave numbersign
++ control keycode 4 = Escape
++ alt keycode 4 = Meta_grave
++keycode 5 = four dollar
++ alt keycode 5 = Meta_four
++keycode 6 = five percent asciicircum
++ control keycode 6 = Control_asciicircum
++ alt keycode 6 = Meta_five
++keycode 7 = six ampersand notsign
++ alt keycode 7 = Meta_six
++keycode 8 = seven slash backslash
++ control keycode 8 = Control_backslash
++ alt keycode 8 = Meta_seven
++keycode 9 = eight parenleft
++ control keycode 9 = Delete
++ alt keycode 9 = Meta_eight
++keycode 10 = nine parenright
++ alt keycode 10 = Meta_nine
++keycode 11 = zero equal
++ alt keycode 11 = Meta_equal
++keycode 12 = apostrophe question
++ alt keycode 12 = Meta_apostrophe
++keycode 13 = exclamdown questiondown
++keycode 14 = Delete
++ control keycode 14 = Control_underscore
++ alt keycode 14 = Meta_Delete
++keycode 15 = Tab
++ alt keycode 15 = Meta_Tab
++keycode 18 = e E euro
++keycode 26 = apostrophe diaeresis degree
++keycode 27 = bracketleft braceleft
++ control keycode 27 = Escape
++ alt keycode 27 = Meta_bracketleft
++keycode 28 = Return
++ alt keycode 28 = Meta_Control_m
++keycode 29 = Control
++keycode 39 = +ntilde +Ntilde
++keycode 40 = plus asterisk asciitilde
++ control keycode 40 = Control_g
++ alt keycode 40 = Meta_asciitilde
++keycode 41 = masculine ordfeminine backslash
++ control keycode 41 = Control_backslash
++ alt keycode 41 = Meta_backslash
++keycode 42 = Shift
++keycode 43 = bracketright braceright
++ control keycode 43 = Control_bracketright
++ alt keycode 43 = Meta_bracketright
++keycode 51 = comma semicolon
++ alt keycode 51 = Meta_comma
++ shift alt keycode 51 = Meta_semicolon
++keycode 52 = period colon
++ alt keycode 52 = Meta_period
++keycode 53 = minus underscore
++ control keycode 53 = Control_underscore
++ alt keycode 53 = Meta_minus
++keycode 54 = Shift
++keycode 56 = Alt
++keycode 57 = space
++ control keycode 57 = nul
++ alt keycode 57 = Meta_space
++keycode 211 = less greater
++ alt keycode 211 = Meta_less
++ shift alt keycode 211 = Meta_greater
++
+diff --git a/data/keymaps/i386/olpc/es.map b/data/keymaps/i386/olpc/es.map
+deleted file mode 100644
+index e97caeb..0000000
+--- a/data/keymaps/i386/olpc/es.map
++++ /dev/null
+@@ -1,80 +0,0 @@
+-! Spanish keymap for OLPC; based upon es.map
+-! Walter Bender (3 January 2008)
+-!
+-charset "iso-8859-15"
+-keymaps 0-2,4,6,8-9,12
+-include "qwerty-layout"
+-include "linux-with-alt-and-altgr"
+-strings as usual
+-
+-keycode 1 = Escape
+- alt keycode 1 = Meta_Escape
+-keycode 2 = one exclam bar
+- alt keycode 2 = Meta_one
+-keycode 3 = two quotedbl at
+- control keycode 3 = nul
+- alt keycode 3 = Meta_two
+-keycode 4 = three grave numbersign
+- control keycode 4 = Escape
+- alt keycode 4 = Meta_grave
+-keycode 5 = four dollar
+- alt keycode 5 = Meta_four
+-keycode 6 = five percent asciicircum
+- control keycode 6 = Control_asciicircum
+- alt keycode 6 = Meta_five
+-keycode 7 = six ampersand notsign
+- alt keycode 7 = Meta_six
+-keycode 8 = seven slash backslash
+- control keycode 8 = Control_backslash
+- alt keycode 8 = Meta_seven
+-keycode 9 = eight parenleft
+- control keycode 9 = Delete
+- alt keycode 9 = Meta_eight
+-keycode 10 = nine parenright
+- alt keycode 10 = Meta_nine
+-keycode 11 = zero equal
+- alt keycode 11 = Meta_equal
+-keycode 12 = apostrophe question
+- alt keycode 12 = Meta_apostrophe
+-keycode 13 = exclamdown questiondown
+-keycode 14 = Delete
+- control keycode 14 = Control_underscore
+- alt keycode 14 = Meta_Delete
+-keycode 15 = Tab
+- alt keycode 15 = Meta_Tab
+-keycode 18 = e E euro
+-keycode 26 = apostrophe diaeresis degree
+-keycode 27 = bracketleft braceleft
+- control keycode 27 = Escape
+- alt keycode 27 = Meta_bracketleft
+-keycode 28 = Return
+- alt keycode 28 = Meta_Control_m
+-keycode 29 = Control
+-keycode 39 = +ntilde +Ntilde
+-keycode 40 = plus asterisk asciitilde
+- control keycode 40 = Control_g
+- alt keycode 40 = Meta_asciitilde
+-keycode 41 = masculine ordfeminine backslash
+- control keycode 41 = Control_backslash
+- alt keycode 41 = Meta_backslash
+-keycode 42 = Shift
+-keycode 43 = bracketright braceright
+- control keycode 43 = Control_bracketright
+- alt keycode 43 = Meta_bracketright
+-keycode 51 = comma semicolon
+- alt keycode 51 = Meta_comma
+- shift alt keycode 51 = Meta_semicolon
+-keycode 52 = period colon
+- alt keycode 52 = Meta_period
+-keycode 53 = minus underscore
+- control keycode 53 = Control_underscore
+- alt keycode 53 = Meta_minus
+-keycode 54 = Shift
+-keycode 56 = Alt
+-keycode 57 = space
+- control keycode 57 = nul
+- alt keycode 57 = Meta_space
+-keycode 211 = less greater
+- alt keycode 211 = Meta_less
+- shift alt keycode 211 = Meta_greater
+-
+diff --git a/data/keymaps/i386/olpc/pt-olpc.map b/data/keymaps/i386/olpc/pt-olpc.map
+new file mode 100644
+index 0000000..173970a
+--- /dev/null
++++ b/data/keymaps/i386/olpc/pt-olpc.map
+@@ -0,0 +1,68 @@
++! Portuguese keymap for OLPC; based upon pt.map
++! Walter Bender (8 January 2008)
++!
++charset "iso-8859-15"
++keymaps 0-2,4,6,8,12
++alt_is_meta
++include "qwerty-layout"
++include "linux-with-alt-and-altgr"
++strings as usual
++
++keycode 1 = Escape
++ alt keycode 1 = Meta_Escape
++keycode 2 = one exclam onesuperior
++keycode 3 = two at twosuperior
++keycode 4 = three numbersign threesuperior
++keycode 5 = four dollar
++keycode 6 = five percent cent
++keycode 7 = six dead_diaeresis notsign
++keycode 8 = seven ampersand
++keycode 9 = eight asterisk
++keycode 10 = nine parenleft
++keycode 11 = zero parenright
++keycode 12 = minus underscore
++ control keycode 12 = Control_underscore
++ alt keycode 12 = Meta_minus
++keycode 13 = equal plus section
++ alt keycode 13 = Meta_equal
++keycode 14 = Delete
++keycode 15 = Tab
++keycode 18 = e E euro
++keycode 26 = apostrophe grave dead_acute dead_grave
++ alt keycode 26 = Meta_apostrophe
++keycode 27 = bracketleft braceleft ordfeminine
++ control keycode 27 = Escape
++ alt keycode 27 = Meta_bracketleft
++keycode 28 = Return
++ alt keycode 28 = Meta_Control_m
++keycode 29 = Control
++ shift keycode 29 = Compose
++keycode 39 = +ccedilla Ccedilla
++keycode 40 = asciitilde asciicircum dead_tilde dead_circumflex
++ control keycode 40 = Control_asciicircum
++ alt keycode 40 = Meta_asciitilde
++keycode 41 = apostrophe quotedbl
++ alt keycode 41 = Meta_grave
++keycode 42 = Shift
++keycode 43 = bracketright braceright masculine
++ control keycode 43 = Control_bracketright
++ alt keycode 43 = Meta_bracketright
++keycode 44 = z Z bar
++keycode 51 = comma less
++ alt keycode 51 = Meta_comma
++keycode 52 = period greater backslash
++ control keycode 52 = Control_backslash
++ alt keycode 52 = Meta_period
++keycode 53 = semicolon colon
++ alt keycode 53 = Meta_semicolon
++keycode 54 = Shift
++keycode 56 = Alt
++keycode 57 = space
++ control keycode 57 = nul
++keycode 211 = slash question
++ alt keycode 211 = Meta_slash
++compose 'e' '=' to '¤'
++compose '-' 'e' to '¤'
++compose '-' 'E' to '¤'
++compose '=' 'E' to '¤'
++
+diff --git a/data/keymaps/i386/olpc/pt.map b/data/keymaps/i386/olpc/pt.map
+deleted file mode 100644
+index 173970a..0000000
+--- a/data/keymaps/i386/olpc/pt.map
++++ /dev/null
+@@ -1,68 +0,0 @@
+-! Portuguese keymap for OLPC; based upon pt.map
+-! Walter Bender (8 January 2008)
+-!
+-charset "iso-8859-15"
+-keymaps 0-2,4,6,8,12
+-alt_is_meta
+-include "qwerty-layout"
+-include "linux-with-alt-and-altgr"
+-strings as usual
+-
+-keycode 1 = Escape
+- alt keycode 1 = Meta_Escape
+-keycode 2 = one exclam onesuperior
+-keycode 3 = two at twosuperior
+-keycode 4 = three numbersign threesuperior
+-keycode 5 = four dollar
+-keycode 6 = five percent cent
+-keycode 7 = six dead_diaeresis notsign
+-keycode 8 = seven ampersand
+-keycode 9 = eight asterisk
+-keycode 10 = nine parenleft
+-keycode 11 = zero parenright
+-keycode 12 = minus underscore
+- control keycode 12 = Control_underscore
+- alt keycode 12 = Meta_minus
+-keycode 13 = equal plus section
+- alt keycode 13 = Meta_equal
+-keycode 14 = Delete
+-keycode 15 = Tab
+-keycode 18 = e E euro
+-keycode 26 = apostrophe grave dead_acute dead_grave
+- alt keycode 26 = Meta_apostrophe
+-keycode 27 = bracketleft braceleft ordfeminine
+- control keycode 27 = Escape
+- alt keycode 27 = Meta_bracketleft
+-keycode 28 = Return
+- alt keycode 28 = Meta_Control_m
+-keycode 29 = Control
+- shift keycode 29 = Compose
+-keycode 39 = +ccedilla Ccedilla
+-keycode 40 = asciitilde asciicircum dead_tilde dead_circumflex
+- control keycode 40 = Control_asciicircum
+- alt keycode 40 = Meta_asciitilde
+-keycode 41 = apostrophe quotedbl
+- alt keycode 41 = Meta_grave
+-keycode 42 = Shift
+-keycode 43 = bracketright braceright masculine
+- control keycode 43 = Control_bracketright
+- alt keycode 43 = Meta_bracketright
+-keycode 44 = z Z bar
+-keycode 51 = comma less
+- alt keycode 51 = Meta_comma
+-keycode 52 = period greater backslash
+- control keycode 52 = Control_backslash
+- alt keycode 52 = Meta_period
+-keycode 53 = semicolon colon
+- alt keycode 53 = Meta_semicolon
+-keycode 54 = Shift
+-keycode 56 = Alt
+-keycode 57 = space
+- control keycode 57 = nul
+-keycode 211 = slash question
+- alt keycode 211 = Meta_slash
+-compose 'e' '=' to '¤'
+-compose '-' 'e' to '¤'
+-compose '-' 'E' to '¤'
+-compose '=' 'E' to '¤'
+-
+--
+1.5.3.7
+