Package: grub2
Version: 1.99-22.1
Severity: normal
Tags: patch

Hello,

I tried to setup japanese keyboard layout then some problem occuerd:

$ grub-kbdcomp jp
Unknown keycode 0x7c
Unknown keycode 0x59

# cp jp.gkb /boot/grub/

"grub.cfg"
insmod at_keyboard
insmod keylayouts
terminal_input at_keyboard
keymap /boot/grub/jp.gkb

grub> (no echo at hit '\' keys: upper right side and lower right side)

So, I made patch. it modifies grub-mklayout and at_keyboard.mod.

Thanks,
Hiroyuki YAMAMORI
--- grub-1.99~2.00/grub-core/term/at_keyboard.c	2011-05-14 07:47:57.000000000 +0900
+++ new/grub-core/term/at_keyboard.c	2012-07-09 22:48:33.000000000 +0900
@@ -97,7 +97,17 @@
     /* OLPC keys. Just mapped to normal keys.  */
     /* 0x64 */ 0,                             GRUB_KEYBOARD_KEY_UP,
     /* 0x66 */ GRUB_KEYBOARD_KEY_DOWN,        GRUB_KEYBOARD_KEY_LEFT,
-    /* 0x68 */ GRUB_KEYBOARD_KEY_RIGHT
+    /* 0x68 */ GRUB_KEYBOARD_KEY_RIGHT,       0,
+    /* 0x6a */ 0,                             0,
+    /* 0x6c */ 0,                             0,
+    /* 0x6e */ 0,                             0,
+    /* 0x70 */ 0,                             0,
+    /* 0x72 */ 0,                             GRUB_KEYBOARD_KEY_JPBACKSLASH,
+    /* 0x74 */ 0,                             0,
+    /* 0x76 */ 0,                             0,
+    /* 0x78 */ 0,                             0,
+    /* 0x7a */ 0,                             0,
+    /* 0x7c */ 0,                             GRUB_KEYBOARD_KEY_JPYEN
   };
 
 static const struct
--- grub-1.99~2.00/include/grub/keyboard_layouts.h	2010-12-01 23:45:43.000000000 +0900
+++ new/include/grub/keyboard_layouts.h	2012-07-09 22:30:35.000000000 +0900
@@ -129,6 +129,8 @@
     GRUB_KEYBOARD_KEY_NUM0 = 0x62,
     GRUB_KEYBOARD_KEY_NUMDOT = 0x63,
     GRUB_KEYBOARD_KEY_102ND = 0x64,
+    GRUB_KEYBOARD_KEY_JPBACKSLASH = 0x70,
+    GRUB_KEYBOARD_KEY_JPYEN = 0x71,
     GRUB_KEYBOARD_KEY_LEFT_CTRL = 0xe0,
     GRUB_KEYBOARD_KEY_LEFT_SHIFT = 0xe1,
     GRUB_KEYBOARD_KEY_LEFT_ALT = 0xe2,
--- grub-1.99~2.00/util/grub-mklayout.c	2011-01-12 04:41:07.000000000 +0900
+++ new/util/grub-mklayout.c	2012-07-09 22:37:13.000000000 +0900
@@ -242,7 +242,7 @@
   /* 0x52 */ GRUB_KEYBOARD_KEY_NUMDOT,      GRUB_KEYBOARD_KEY_NUMDOT, 
   /* 0x54 */ 0,                             0, 
   /* 0x56 */ GRUB_KEYBOARD_KEY_102ND,       GRUB_KEYBOARD_KEY_F11, 
-  /* 0x58 */ GRUB_KEYBOARD_KEY_F12,         0,
+  /* 0x58 */ GRUB_KEYBOARD_KEY_F12,         GRUB_KEYBOARD_KEY_JPBACKSLASH,
   /* 0x5a */ 0,                             0,
   /* 0x5c */ 0,                             0,
   /* 0x5e */ 0,                             0,
@@ -253,7 +253,14 @@
   /* 0x68 */ GRUB_KEYBOARD_KEY_PPAGE,       GRUB_KEYBOARD_KEY_LEFT,
   /* 0x6a */ GRUB_KEYBOARD_KEY_RIGHT,       GRUB_KEYBOARD_KEY_END,
   /* 0x6c */ GRUB_KEYBOARD_KEY_DOWN,        GRUB_KEYBOARD_KEY_NPAGE, 
-  /* 0x6e */ GRUB_KEYBOARD_KEY_INSERT,      GRUB_KEYBOARD_KEY_DELETE
+  /* 0x6e */ GRUB_KEYBOARD_KEY_INSERT,      GRUB_KEYBOARD_KEY_DELETE,
+  /* 0x70 */ 0,                             0,
+  /* 0x72 */ 0,                             0,
+  /* 0x74 */ 0,                             0,
+  /* 0x76 */ 0,                             0,
+  /* 0x78 */ 0,                             0,
+  /* 0x7a */ 0,                             0,
+  /* 0x7c */ GRUB_KEYBOARD_KEY_JPYEN
 }; 
 
 static void

Reply via email to