*** kinput2-v3.1/lib/Canna.c.orig 2002-10-03 18:35:27.000000000 +0900 --- kinput2-v3.1/lib/Canna.c 2003-01-25 23:45:40.000000000 +0900 *************** *** 1315,1329 **** *buffer_return = CANNA_KEY_Nfer; functionalChar = 1; break; ! case XK_Kanji: if (event_struct->state & 4 /* control-shifted */) *buffer_return = CANNA_KEY_Cntrl_Xfer; else if (event_struct->state & 1 /* shifted */) ! *buffer_return = CANNA_KEY_Shift_Xfer; else *buffer_return = CANNA_KEY_Xfer; functionalChar = 1; break; case XK_Up: if (event_struct->state & 4 /* control-shifted */) *buffer_return = CANNA_KEY_Cntrl_Up; --- 1315,1352 ---- *buffer_return = CANNA_KEY_Nfer; functionalChar = 1; break; ! case XK_Mode_switch: ! if (event_struct->state & 1 /* shifted */) ! *buffer_return = CANNA_KEY_Shift_Xfer; ! else ! break; ! functionalChar = 1; ! break; ! case XK_Henkan_Mode: if (event_struct->state & 4 /* control-shifted */) *buffer_return = CANNA_KEY_Cntrl_Xfer; else if (event_struct->state & 1 /* shifted */) ! break; else *buffer_return = CANNA_KEY_Xfer; functionalChar = 1; break; + case XK_Hiragana_Katakana: + *buffer_return = CANNA_KEY_HIRAGANA; + functionalChar = 1; + break; + case XK_Romaji: + *buffer_return = CANNA_KEY_KATAKANA; + functionalChar = 1; + break; + case XK_Zenkaku_Hankaku: + *buffer_return = CANNA_KEY_HANKAKUZENKAKU; + functionalChar = 1; + break; + case XK_Kanji: + *buffer_return = CANNA_KEY_HANKAKUZENKAKU; + functionalChar = 1; + break; case XK_Up: if (event_struct->state & 4 /* control-shifted */) *buffer_return = CANNA_KEY_Cntrl_Up; *************** *** 1605,1611 **** {(unsigned char)'\024', XK_Scroll_Lock, 0}, {(unsigned char)'\e', XK_Escape, 0}, {(unsigned char)CANNA_KEY_Nfer, XK_Muhenkan, 0}, ! {(unsigned char)CANNA_KEY_Xfer, XK_Kanji, 0}, {(unsigned char)CANNA_KEY_Up, XK_Up, 0}, {(unsigned char)CANNA_KEY_Left, XK_Left, 0}, {(unsigned char)CANNA_KEY_Right, XK_Right, 0}, --- 1628,1634 ---- {(unsigned char)'\024', XK_Scroll_Lock, 0}, {(unsigned char)'\e', XK_Escape, 0}, {(unsigned char)CANNA_KEY_Nfer, XK_Muhenkan, 0}, ! {(unsigned char)CANNA_KEY_Xfer, XK_Henkan_Mode, 0}, {(unsigned char)CANNA_KEY_Up, XK_Up, 0}, {(unsigned char)CANNA_KEY_Left, XK_Left, 0}, {(unsigned char)CANNA_KEY_Right, XK_Right, 0}, *************** *** 1617,1629 **** {(unsigned char)CANNA_KEY_Help, XK_Help, 0}, {(unsigned char)CANNA_KEY_KP_Key, XK_KP_Space, 0}, /* ? */ {(unsigned char)CANNA_KEY_Shift_Nfer, XK_Muhenkan, ShiftMask}, ! {(unsigned char)CANNA_KEY_Shift_Xfer, XK_Kanji, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Up, XK_Up, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Left, XK_Left, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Right, XK_Right, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Down, XK_Down, ShiftMask}, {(unsigned char)CANNA_KEY_Cntrl_Nfer, XK_Muhenkan, ControlMask}, ! {(unsigned char)CANNA_KEY_Cntrl_Xfer, XK_Kanji, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Up, XK_Up, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Left, XK_Left, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Right, XK_Right, ControlMask}, --- 1640,1652 ---- {(unsigned char)CANNA_KEY_Help, XK_Help, 0}, {(unsigned char)CANNA_KEY_KP_Key, XK_KP_Space, 0}, /* ? */ {(unsigned char)CANNA_KEY_Shift_Nfer, XK_Muhenkan, ShiftMask}, ! {(unsigned char)CANNA_KEY_Shift_Xfer, XK_Mode_switch, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Up, XK_Up, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Left, XK_Left, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Right, XK_Right, ShiftMask}, {(unsigned char)CANNA_KEY_Shift_Down, XK_Down, ShiftMask}, {(unsigned char)CANNA_KEY_Cntrl_Nfer, XK_Muhenkan, ControlMask}, ! {(unsigned char)CANNA_KEY_Cntrl_Xfer, XK_Henkan_Mode, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Up, XK_Up, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Left, XK_Left, ControlMask}, {(unsigned char)CANNA_KEY_Cntrl_Right, XK_Right, ControlMask}, *************** *** 1638,1643 **** --- 1661,1672 ---- {(unsigned char)CANNA_KEY_F8, XK_F8, 0}, {(unsigned char)CANNA_KEY_F9, XK_F9, 0}, {(unsigned char)CANNA_KEY_F10, XK_F10, 0}, + {(unsigned char)CANNA_KEY_F11, XK_F11, 0}, + {(unsigned char)CANNA_KEY_F12, XK_F12, 0}, + {(unsigned char)CANNA_KEY_F13, XK_F13, 0}, + {(unsigned char)CANNA_KEY_F14, XK_F14, 0}, + {(unsigned char)CANNA_KEY_F15, XK_F15, 0}, + {(unsigned char)CANNA_KEY_F16, XK_F16, 0}, {(unsigned char)CANNA_KEY_PF1, XK_KP_F1, 0}, {(unsigned char)CANNA_KEY_PF2, XK_KP_F2, 0}, {(unsigned char)CANNA_KEY_PF3, XK_KP_F3, 0}, *************** *** 1648,1653 **** --- 1677,1685 ---- {(unsigned char)CANNA_KEY_PF8, XK_F18, 0}, {(unsigned char)CANNA_KEY_PF9, XK_F19, 0}, {(unsigned char)CANNA_KEY_PF10, XK_F20, 0}, + {(unsigned char)CANNA_KEY_HIRAGANA, XK_Hiragana_Katakana, 0}, + {(unsigned char)CANNA_KEY_KATAKANA, XK_Romaji, 0}, + {(unsigned char)CANNA_KEY_HANKAKUZENKAKU, XK_Zenkaku_Hankaku, 0}, }; #define NCANNAKEYMAP (sizeof(cannakeymap) / sizeof(struct _keymap))