1/* Copyright 1992 NEC Corporation, Tokyo, Japan. 2 * 3 * Permission to use, copy, modify, distribute and sell this software 4 * and its documentation for any purpose is hereby granted without 5 * fee, provided that the above copyright notice appear in all copies 6 * and that both that copyright notice and this permission notice 7 * appear in supporting documentation, and that the name of NEC 8 * Corporation not be used in advertising or publicity pertaining to 9 * distribution of the software without specific, written prior 10 * permission. NEC Corporation makes no representations about the 11 * suitability of this software for any purpose. It is provided "as 12 * is" without express or implied warranty. 13 * 14 * NEC CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN 16 * NO EVENT SHALL NEC CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF 18 * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 19 * OTHER TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20 * PERFORMANCE OF THIS SOFTWARE. 21 */ 22// modified by T.Murai 1998 23 24#if !defined(lint) && !defined(__CODECENTER__) 25static char emptymap_id[] = "@(#) 102.1 $Id: emptymap.h 10525 2004-12-23 21:23:50Z korli $"; 26#endif /* lint */ 27#include "canna.h" 28 29#define NONE CANNA_FN_Undefined 30 31static struct funccfunc empty_funcs[] = { 32 {CANNA_FN_SelfInsert ,EmptySelfInsert }, 33 {CANNA_FN_FunctionalInsert ,EmptyYomiInsert }, 34 {CANNA_FN_QuotedInsert ,EmptyQuotedInsert }, 35 {CANNA_FN_AlphaMode ,AlphaMode }, 36 {CANNA_FN_HenkanNyuryokuMode ,HenkanNyuryokuMode }, 37 {CANNA_FN_KigouMode ,KigoIchiran }, 38 {CANNA_FN_DeletePrevious ,EmptyDeletePrevious }, 39 {CANNA_FN_Kakutei ,EmptyKakutei }, 40 {CANNA_FN_Quit ,EmptyQuit }, 41 {CANNA_FN_ExtendMode ,UiUtilMode }, 42 {CANNA_FN_BaseHiragana ,EmptyBaseHira }, 43 {CANNA_FN_BaseKatakana ,EmptyBaseKata }, 44 {CANNA_FN_BaseKana ,EmptyBaseKana }, 45 {CANNA_FN_BaseEisu ,EmptyBaseEisu }, 46 {CANNA_FN_BaseZenkaku ,EmptyBaseZen }, 47 {CANNA_FN_BaseHankaku ,EmptyBaseHan }, 48 {CANNA_FN_BaseKakutei ,EmptyBaseKakutei }, 49 {CANNA_FN_BaseHenkan ,EmptyBaseHenkan }, 50 {CANNA_FN_BaseHiraKataToggle ,YomiBaseHiraKataToggle }, 51 {CANNA_FN_BaseZenHanToggle ,YomiBaseZenHanToggle }, 52 {CANNA_FN_BaseKanaEisuToggle ,YomiBaseKanaEisuToggle }, 53 {CANNA_FN_BaseKakuteiHenkanToggle ,YomiBaseKakuteiHenkanToggle }, 54 {CANNA_FN_BaseRotateForward ,YomiBaseRotateForw }, 55 {CANNA_FN_BaseRotateBackward ,YomiBaseRotateBack }, 56 {CANNA_FN_FuncSequence ,DoFuncSequence }, 57 {CANNA_FN_TemporalMode ,YomiModeBackup }, 58 59 {CANNA_FN_Nop ,AlphaNop }, 60 {CANNA_FN_UseOtherKeymap ,UseOtherKeymap }, 61 {CANNA_FN_UserMode ,(int (*)(struct _uiContext *)) 62 ProcExtraFunc }, 63#ifdef WIN 64 {CANNA_FN_DefineDicMode ,dicTouroku }, 65 {CANNA_FN_DeleteDicMode ,dicSakujo }, 66 {CANNA_FN_HenkanRegion ,HenkanRegion }, 67 {CANNA_FN_PhonoEdit ,PhonoEdit }, 68 {CANNA_FN_DicEdit ,DicEdit }, 69 {CANNA_FN_Configure ,Configure }, 70#endif 71 72#ifndef NO_EXTEND_MENU 73#ifndef WIN 74 {CANNA_FN_DefineDicMode ,dicTouroku }, 75 {CANNA_FN_DeleteDicMode ,dicSakujo }, 76#endif 77 {CANNA_FN_HexMode ,HexMode }, 78 {CANNA_FN_BushuMode ,BushuMode }, 79 {CANNA_FN_RussianMode ,kigoRussia }, 80 {CANNA_FN_GreekMode ,kigoGreek }, 81 {CANNA_FN_LineMode ,kigoKeisen }, 82 {CANNA_FN_SyncDic ,dicSync }, 83 {CANNA_FN_DicMountMode ,dicMount }, 84 {CANNA_FN_ChangeServerMode ,serverChange }, 85 {CANNA_FN_DisconnectServer ,serverFin }, 86 {CANNA_FN_ShowServer ,showServer }, 87 {CANNA_FN_ShowGakushu ,showGakushu }, 88 {CANNA_FN_ShowVersion ,showVersion }, 89 {CANNA_FN_ShowPhonogramFile ,showRomkanaFile }, 90 {CANNA_FN_ShowCannaFile ,showInitFile }, 91 {CANNA_FN_EnterChikujiMode ,chikujiInit }, 92 {CANNA_FN_EnterRenbunMode ,renbunInit }, 93#endif 94 {DEFAULTBEHAVIOR ,EmptySelfInsert }, 95 {0 ,0 }, 96}; 97 98BYTE empty_kmap[256] = 99{ 100/* C-@ */ CANNA_FN_SelfInsert, 101/* C-a */ CANNA_FN_SelfInsert, 102/* C-b */ CANNA_FN_SelfInsert, 103/* C-c */ CANNA_FN_SelfInsert, 104/* C-d */ CANNA_FN_SelfInsert, 105/* C-e */ CANNA_FN_SelfInsert, 106/* C-f */ CANNA_FN_SelfInsert, 107/* C-g */ CANNA_FN_Quit, 108/* C-h */ CANNA_FN_DeletePrevious, 109/* C-i */ CANNA_FN_SelfInsert, 110/* C-j */ CANNA_FN_Kakutei, 111/* C-k */ CANNA_FN_SelfInsert, 112/* C-l */ CANNA_FN_SelfInsert, 113/* C-m */ CANNA_FN_Kakutei, 114/* C-n */ CANNA_FN_SelfInsert, 115/* C-o */ CANNA_FN_AlphaMode, 116/* C-p */ CANNA_FN_SelfInsert, 117/* C-q */ CANNA_FN_QuotedInsert, 118/* C-r */ CANNA_FN_SelfInsert, 119/* C-s */ CANNA_FN_SelfInsert, 120/* C-t */ CANNA_FN_SelfInsert, 121/* C-u */ CANNA_FN_SelfInsert, 122/* C-v */ CANNA_FN_SelfInsert, 123/* C-w */ CANNA_FN_SelfInsert, 124/* C-x */ CANNA_FN_SelfInsert, 125/* C-y */ CANNA_FN_SelfInsert, 126/* C-z */ CANNA_FN_SelfInsert, 127/* C-[ */ CANNA_FN_SelfInsert, 128/* C-\ */ CANNA_FN_SelfInsert, 129/* C-] */ CANNA_FN_SelfInsert, 130/* C-^ */ CANNA_FN_SelfInsert, 131/* C-_ */ CANNA_FN_SelfInsert, 132/* space */ CANNA_FN_SelfInsert, 133/* ! */ CANNA_FN_FunctionalInsert, 134/* " */ CANNA_FN_FunctionalInsert, 135/* # */ CANNA_FN_FunctionalInsert, 136/* $ */ CANNA_FN_FunctionalInsert, 137/* % */ CANNA_FN_FunctionalInsert, 138/* & */ CANNA_FN_FunctionalInsert, 139/* ' */ CANNA_FN_FunctionalInsert, 140/* ( */ CANNA_FN_FunctionalInsert, 141/* ) */ CANNA_FN_FunctionalInsert, 142/* * */ CANNA_FN_FunctionalInsert, 143/* + */ CANNA_FN_FunctionalInsert, 144/* , */ CANNA_FN_FunctionalInsert, 145/* - */ CANNA_FN_FunctionalInsert, 146/* . */ CANNA_FN_FunctionalInsert, 147/* / */ CANNA_FN_FunctionalInsert, 148/* 0 */ CANNA_FN_FunctionalInsert, 149/* 1 */ CANNA_FN_FunctionalInsert, 150/* 2 */ CANNA_FN_FunctionalInsert, 151/* 3 */ CANNA_FN_FunctionalInsert, 152/* 4 */ CANNA_FN_FunctionalInsert, 153/* 5 */ CANNA_FN_FunctionalInsert, 154/* 6 */ CANNA_FN_FunctionalInsert, 155/* 7 */ CANNA_FN_FunctionalInsert, 156/* 8 */ CANNA_FN_FunctionalInsert, 157/* 9 */ CANNA_FN_FunctionalInsert, 158/* : */ CANNA_FN_FunctionalInsert, 159/* ; */ CANNA_FN_FunctionalInsert, 160/* < */ CANNA_FN_FunctionalInsert, 161/* = */ CANNA_FN_FunctionalInsert, 162/* > */ CANNA_FN_FunctionalInsert, 163/* ? */ CANNA_FN_FunctionalInsert, 164/* @ */ CANNA_FN_FunctionalInsert, 165/* A */ CANNA_FN_FunctionalInsert, 166/* B */ CANNA_FN_FunctionalInsert, 167/* C */ CANNA_FN_FunctionalInsert, 168/* D */ CANNA_FN_FunctionalInsert, 169/* E */ CANNA_FN_FunctionalInsert, 170/* F */ CANNA_FN_FunctionalInsert, 171/* G */ CANNA_FN_FunctionalInsert, 172/* H */ CANNA_FN_FunctionalInsert, 173/* I */ CANNA_FN_FunctionalInsert, 174/* J */ CANNA_FN_FunctionalInsert, 175/* K */ CANNA_FN_FunctionalInsert, 176/* L */ CANNA_FN_FunctionalInsert, 177/* M */ CANNA_FN_FunctionalInsert, 178/* N */ CANNA_FN_FunctionalInsert, 179/* O */ CANNA_FN_FunctionalInsert, 180/* P */ CANNA_FN_FunctionalInsert, 181/* Q */ CANNA_FN_FunctionalInsert, 182/* R */ CANNA_FN_FunctionalInsert, 183/* S */ CANNA_FN_FunctionalInsert, 184/* T */ CANNA_FN_FunctionalInsert, 185/* U */ CANNA_FN_FunctionalInsert, 186/* V */ CANNA_FN_FunctionalInsert, 187/* W */ CANNA_FN_FunctionalInsert, 188/* X */ CANNA_FN_FunctionalInsert, 189/* Y */ CANNA_FN_FunctionalInsert, 190/* Z */ CANNA_FN_FunctionalInsert, 191/* [ */ CANNA_FN_FunctionalInsert, 192/* \ */ CANNA_FN_FunctionalInsert, 193/* ] */ CANNA_FN_FunctionalInsert, 194/* ^ */ CANNA_FN_FunctionalInsert, 195/* _ */ CANNA_FN_FunctionalInsert, 196/* ` */ CANNA_FN_FunctionalInsert, 197/* a */ CANNA_FN_FunctionalInsert, 198/* b */ CANNA_FN_FunctionalInsert, 199/* c */ CANNA_FN_FunctionalInsert, 200/* d */ CANNA_FN_FunctionalInsert, 201/* e */ CANNA_FN_FunctionalInsert, 202/* f */ CANNA_FN_FunctionalInsert, 203/* g */ CANNA_FN_FunctionalInsert, 204/* h */ CANNA_FN_FunctionalInsert, 205/* i */ CANNA_FN_FunctionalInsert, 206/* j */ CANNA_FN_FunctionalInsert, 207/* k */ CANNA_FN_FunctionalInsert, 208/* l */ CANNA_FN_FunctionalInsert, 209/* m */ CANNA_FN_FunctionalInsert, 210/* n */ CANNA_FN_FunctionalInsert, 211/* o */ CANNA_FN_FunctionalInsert, 212/* p */ CANNA_FN_FunctionalInsert, 213/* q */ CANNA_FN_FunctionalInsert, 214/* r */ CANNA_FN_FunctionalInsert, 215/* s */ CANNA_FN_FunctionalInsert, 216/* t */ CANNA_FN_FunctionalInsert, 217/* u */ CANNA_FN_FunctionalInsert, 218/* v */ CANNA_FN_FunctionalInsert, 219/* w */ CANNA_FN_FunctionalInsert, 220/* x */ CANNA_FN_FunctionalInsert, 221/* y */ CANNA_FN_FunctionalInsert, 222/* z */ CANNA_FN_FunctionalInsert, 223/* { */ CANNA_FN_FunctionalInsert, 224/* | */ CANNA_FN_FunctionalInsert, 225/* } */ CANNA_FN_FunctionalInsert, 226/* ~ */ CANNA_FN_FunctionalInsert, 227/* DEL */ CANNA_FN_SelfInsert, 228/* Nfer */ CANNA_FN_Kakutei, 229/* Xfer */ CANNA_FN_AlphaMode, 230/* Up */ NONE, 231/* Left */ NONE, 232/* Right */ NONE, 233/* Down */ NONE, 234/* Insert */ CANNA_FN_KigouMode, 235/* Rollup */ NONE, 236/* Rolldown */ NONE, 237#ifdef WIN 238/* Home */ NONE, 239/* Help */ NONE, 240#else 241/* Home */ CANNA_FN_ExtendMode, 242/* Help */ CANNA_FN_ExtendMode, 243#endif 244/* KeyPad */ NONE, 245/* 8c */ NONE, 246/* 8d */ NONE, 247/* 8e */ NONE, 248/* 8f */ NONE, 249/* S-nfer */ NONE, 250/* S-xfer */ CANNA_FN_AlphaMode, 251/* S-up */ NONE, 252/* S-left */ NONE, 253/* S-right */ NONE, 254/* S-down */ NONE, 255/* C-nfer */ NONE, 256/* C-xfer */ CANNA_FN_AlphaMode, 257/* C-up */ NONE, 258/* C-left */ NONE, 259/* C-right */ NONE, 260/* C-down */ NONE, 261/* 9c */ NONE, 262/* 9d */ NONE, 263/* 9e */ NONE, 264/* 9f */ NONE, 265/* KANASPACE */ NONE, 266/* ¡£ */ CANNA_FN_FunctionalInsert, 267/* ¡Ö */ CANNA_FN_FunctionalInsert, 268/* ¡× */ CANNA_FN_FunctionalInsert, 269/* ¡¢ */ CANNA_FN_FunctionalInsert, 270/* ¡¦ */ CANNA_FN_FunctionalInsert, 271/* ¥ò */ CANNA_FN_FunctionalInsert, 272/* ¥¡ */ CANNA_FN_FunctionalInsert, 273/* ¥£ */ CANNA_FN_FunctionalInsert, 274/* ¥¥ */ CANNA_FN_FunctionalInsert, 275/* ¥§ */ CANNA_FN_FunctionalInsert, 276/* ¥© */ CANNA_FN_FunctionalInsert, 277/* ¥ã */ CANNA_FN_FunctionalInsert, 278/* ¥å */ CANNA_FN_FunctionalInsert, 279/* ¥ç */ CANNA_FN_FunctionalInsert, 280/* ¥Ã */ CANNA_FN_FunctionalInsert, 281/* ¡¼ */ CANNA_FN_FunctionalInsert, 282/* ¥¢ */ CANNA_FN_FunctionalInsert, 283/* ¥¤ */ CANNA_FN_FunctionalInsert, 284/* ¥¦ */ CANNA_FN_FunctionalInsert, 285/* ¥¨ */ CANNA_FN_FunctionalInsert, 286/* ¥ª */ CANNA_FN_FunctionalInsert, 287/* ¥« */ CANNA_FN_FunctionalInsert, 288/* ¥ */ CANNA_FN_FunctionalInsert, 289/* ¥¯ */ CANNA_FN_FunctionalInsert, 290/* ¥± */ CANNA_FN_FunctionalInsert, 291/* ¥³ */ CANNA_FN_FunctionalInsert, 292/* ¥µ */ CANNA_FN_FunctionalInsert, 293/* ¥· */ CANNA_FN_FunctionalInsert, 294/* ¥¹ */ CANNA_FN_FunctionalInsert, 295/* ¥» */ CANNA_FN_FunctionalInsert, 296/* ¥½ */ CANNA_FN_FunctionalInsert, 297/* ¥¿ */ CANNA_FN_FunctionalInsert, 298/* ¥Á */ CANNA_FN_FunctionalInsert, 299/* ¥Ä */ CANNA_FN_FunctionalInsert, 300/* ¥Æ */ CANNA_FN_FunctionalInsert, 301/* ¥È */ CANNA_FN_FunctionalInsert, 302/* ¥Ê */ CANNA_FN_FunctionalInsert, 303/* ¥Ë */ CANNA_FN_FunctionalInsert, 304/* ¥Ì */ CANNA_FN_FunctionalInsert, 305/* ¥Í */ CANNA_FN_FunctionalInsert, 306/* ¥Î */ CANNA_FN_FunctionalInsert, 307/* ¥Ï */ CANNA_FN_FunctionalInsert, 308/* ¥Ò */ CANNA_FN_FunctionalInsert, 309/* ¥Õ */ CANNA_FN_FunctionalInsert, 310/* ¥Ø */ CANNA_FN_FunctionalInsert, 311/* ¥Û */ CANNA_FN_FunctionalInsert, 312/* ¥Þ */ CANNA_FN_FunctionalInsert, 313/* ¥ß */ CANNA_FN_FunctionalInsert, 314/* ¥à */ CANNA_FN_FunctionalInsert, 315/* ¥á */ CANNA_FN_FunctionalInsert, 316/* ¥â */ CANNA_FN_FunctionalInsert, 317/* ¥ä */ CANNA_FN_FunctionalInsert, 318/* ¥æ */ CANNA_FN_FunctionalInsert, 319/* ¥è */ CANNA_FN_FunctionalInsert, 320/* ¥é */ CANNA_FN_FunctionalInsert, 321/* ¥ê */ CANNA_FN_FunctionalInsert, 322/* ¥ë */ CANNA_FN_FunctionalInsert, 323/* ¥ì */ CANNA_FN_FunctionalInsert, 324/* ¥í */ CANNA_FN_FunctionalInsert, 325/* ¥ï */ CANNA_FN_FunctionalInsert, 326/* ¥ó */ CANNA_FN_FunctionalInsert, 327/* ¡« */ CANNA_FN_FunctionalInsert, 328/* ¡¬ */ CANNA_FN_FunctionalInsert, 329/* F1 */ NONE, 330/* F2 */ NONE, 331/* F3 */ NONE, 332/* F4 */ NONE, 333/* F5 */ NONE, 334/* F6 */ NONE, 335/* F7 */ NONE, 336/* F8 */ NONE, 337/* F9 */ NONE, 338/* F10 */ NONE, 339/* ea */ NONE, 340/* eb */ NONE, 341/* ec */ NONE, 342/* ed */ NONE, 343/* ee */ NONE, 344/* ef */ NONE, 345/* PF1 */ NONE, 346/* PF2 */ NONE, 347/* PF3 */ NONE, 348/* PF4 */ NONE, 349/* PF5 */ NONE, 350/* PF6 */ NONE, 351/* PF7 */ NONE, 352/* PF8 */ NONE, 353/* PF9 */ NONE, 354/* PF10 */ NONE, 355/* fa */ NONE, 356/* fb */ NONE, 357/* fc */ NONE, 358/* fd */ NONE, 359/* fe */ NONE, 360/* ff */ NONE, 361}; 362 363KanjiModeRec empty_mode = { 364 searchfunc, 365 empty_kmap, 366 CANNA_KANJIMODE_TABLE_SHARED | CANNA_KANJIMODE_EMPTY_MODE, 367 empty_funcs, 368}; 369