summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsorg71 <jsorg71>2009-10-09 07:13:11 +0000
committerjsorg71 <jsorg71>2009-10-09 07:13:11 +0000
commit87cdaf9ec907e8cf63b54d28e6ce34d568783d72 (patch)
tree8ff7d2ebb498bd360fa62d47c73e650d804021f9
parent328649af9b9d64ab6f95734fbccd7fa2b31420e5 (diff)
downloadxrdp-proprietary-87cdaf9ec907e8cf63b54d28e6ce34d568783d72.tar.gz
xrdp-proprietary-87cdaf9ec907e8cf63b54d28e6ce34d568783d72.zip
fix an error and add script
-rwxr-xr-xgenkeymap/dump-keymaps.sh31
-rw-r--r--genkeymap/genkeymap.c10
2 files changed, 32 insertions, 9 deletions
diff --git a/genkeymap/dump-keymaps.sh b/genkeymap/dump-keymaps.sh
new file mode 100755
index 00000000..7f13b73e
--- /dev/null
+++ b/genkeymap/dump-keymaps.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+which setxkbmap
+if test $? -ne 0
+then
+ echo "error, setxkbmap not found"
+ exit 1
+fi
+
+# English - US 'en-us' 0x0409
+setxkbmap -model pc104 -layout us
+./xrdp-genkeymap ../instfiles/km-0409.ini
+
+# German 'de' 0x0407
+setxkbmap -model pc104 -layout de
+./xrdp-genkeymap ../instfiles/km-0407.ini
+
+# Italy 'it' 0x0410
+setxkbmap -model pc104 -layout it
+./xrdp-genkeymap ../instfiles/km-0410.ini
+
+# Russia 'ru' 0x0419
+setxkbmap -model pc104 -layout ru
+./xrdp-genkeymap ../instfiles/km-0419.ini
+
+# Sweden 'se' 0x041d
+setxkbmap -model pc104 -layout se
+./xrdp-genkeymap ../instfiles/km-041d.ini
+
+# set back to en-us
+setxkbmap -model pc104 -layout us
diff --git a/genkeymap/genkeymap.c b/genkeymap/genkeymap.c
index 25383f59..0d0a9a44 100644
--- a/genkeymap/genkeymap.c
+++ b/genkeymap/genkeymap.c
@@ -43,7 +43,6 @@ int main(int argc, char **argv)
{
const char* programname;
char text[256];
- char* ksname = NULL;
char* displayname = NULL;
char* outfname;
char* sections[5] = {"noshift", "shift", "altgr", "capslock", "shiftcapslock"};
@@ -96,14 +95,7 @@ int main(int argc, char **argv)
{
e.keycode = i;
nbytes = XLookupString(&e, text, 255, &ks, NULL);
- if (ks == NoSymbol)
- {
- ksname = "NoSymbol";
- }
- else if (!(ksname = XKeysymToString(ks)))
- {
- ksname = "(no name)";
- }
+ text[nbytes] = 0;
char_count = mbstowcs(wtext, text, 255);
unicode = 0;
if (char_count == 1)