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 
23 #if !defined(lint) && !defined(__CODECENTER__)
24 static char chikuji_id[] = "$Id: chikujimap.h,v 1.1.1.1 2002/10/19 08:27:48 aida_s Exp $";
25 #endif
26 
27 #define BUNPOU_DISPLAY
28 
29 extern TanKouhoIchiran(), TanKatakana();
30 extern TanPrintBunpou();
31 extern TanMuhenkan(), TanBubunKakutei(), TanHankaku();
32 extern TanHiragana(), TanRomaji(), TanZenkaku();
33 extern TanForwardBunsetsu(), TanBackwardBunsetsu();
34 extern TanNextKouho(), TanPreviousKouho();
35 extern TanBeginningOfBunsetsu(), TanEndOfBunsetsu(), TanBubunMuhenkan();
36 extern TanUpper(), TanCapitalize(), TanDeletePrevious();
37 extern TanKanaRotate pro((uiContext)), TanRomajiRotate pro((uiContext));
38 extern TanCaseRotateForward pro((uiContext));
39 
40 #define NONE CANNA_FN_Undefined
41 
42 /* CYsearchfunc ���Ȥ���Τǰʲ���ɽ�˲ä��� yomi_mode �Υޥåפ�Ȥ��� */
43 
44 static struct funccfunc cy_funcs[] = {
45   {CANNA_FN_FunctionalInsert	, YomiInsert/* �������פ�ʤ� */},
46   {CANNA_FN_DeletePrevious	, ChikujiYomiDeletePrevious	},
47   {CANNA_FN_Henkan		, ChikujiHenkan			},
48   {CANNA_FN_HenkanOrInsert	, ChikujiHenkanNaive		},
49   {CANNA_FN_HenkanOrNothing	, ChikujiHenkanOrNothing	},
50   {CANNA_FN_Quit		, ChikujiMuhenkan		},
51   {0				, 0				},
52 };
53 
54 extern searchfunc(), CYsearchfunc(), Yomisearchfunc();
55 extern BYTE default_kmap[];
56 
57 KanjiModeRec cy_mode = {
58   CYsearchfunc,
59   default_kmap,
60   CANNA_KANJIMODE_TABLE_SHARED,
61   cy_funcs,
62 };
63 
64 static struct funccfunc cb_funcs[] = {
65   {CANNA_FN_FunctionalInsert	, YomiInsert/* �������פ�ʤ� */},
66   {CANNA_FN_Forward		, TanForwardBunsetsu		},
67   {CANNA_FN_Backward		, TanBackwardBunsetsu		},
68   {CANNA_FN_Next		, TanNextKouho			},
69   {CANNA_FN_Prev		, TanPreviousKouho		},
70   {CANNA_FN_BeginningOfLine	, TanBeginningOfBunsetsu	},
71   {CANNA_FN_EndOfLine		, TanEndOfBunsetsu		},
72   {CANNA_FN_DeletePrevious	, ChikujiTanDeletePrevious	},
73   {CANNA_FN_KillToEndOfLine	, TanBubunKakutei		},
74   {CANNA_FN_Henkan		, ChikujiHenkan			},
75   {CANNA_FN_HenkanOrInsert	, ChikujiHenkanNaive		},
76   {CANNA_FN_HenkanOrNothing	, ChikujiHenkanOrNothing	},
77   {CANNA_FN_Quit		, TanMuhenkan			},
78   {CANNA_FN_Extend		, ChikujiTanExtend		},
79   {CANNA_FN_Shrink		, ChikujiTanShrink		},
80 /*  {CANNA_FN_AdjustBunsetsu	, TanBunsetsuMode		}, */
81   {CANNA_FN_KouhoIchiran	, TanKouhoIchiran		},
82   {CANNA_FN_BubunMuhenkan	, TanBubunMuhenkan		},
83   {CANNA_FN_Zenkaku		, TanZenkaku			},
84   {CANNA_FN_Hankaku		, TanHankaku			},
85   {CANNA_FN_Hiragana		, TanHiragana			},
86   {CANNA_FN_Katakana		, TanKatakana			},
87   {CANNA_FN_Romaji		, TanRomaji			},
88   {CANNA_FN_ToUpper		, TanUpper			},
89   {CANNA_FN_ToLower		, TanRomaji			},
90   {CANNA_FN_Capitalize		, TanCapitalize			},
91   {CANNA_FN_KanaRotate		, TanKanaRotate			},
92   {CANNA_FN_RomajiRotate	, TanRomajiRotate		},
93   {CANNA_FN_CaseRotate		, TanCaseRotateForward		},
94 #ifdef BUNPOU_DISPLAY
95   {CANNA_FN_ConvertAsHex	,TanPrintBunpou			},
96 #endif
97   {0				, 0				},
98 };
99 
100 KanjiModeRec cb_mode = {
101   CYsearchfunc,
102   default_kmap,
103   CANNA_KANJIMODE_TABLE_SHARED,
104   cb_funcs
105 };
106