comparison src/mule-canna.c @ 458:c33ae14dd6d0 r21-2-44

Import from CVS: tag r21-2-44
author cvs
date Mon, 13 Aug 2007 11:42:25 +0200
parents 3078fd1074e8
children 223736d75acb
comparison
equal deleted inserted replaced
457:4b9290a33024 458:c33ae14dd6d0
178 178
179 static Lisp_Object Vcanna_kakutei_string; 179 static Lisp_Object Vcanna_kakutei_string;
180 static Lisp_Object Vcanna_kakutei_yomi; 180 static Lisp_Object Vcanna_kakutei_yomi;
181 static Lisp_Object Vcanna_kakutei_romaji; 181 static Lisp_Object Vcanna_kakutei_romaji;
182 static Lisp_Object Vcanna_henkan_string; 182 static Lisp_Object Vcanna_henkan_string;
183 static int canna_henkan_length; 183 static Fixnum canna_henkan_length;
184 static int canna_henkan_revPos; 184 static Fixnum canna_henkan_revPos;
185 static int canna_henkan_revLen; 185 static Fixnum canna_henkan_revLen;
186 static Lisp_Object Vcanna_ichiran_string; 186 static Lisp_Object Vcanna_ichiran_string;
187 static int canna_ichiran_length; 187 static Fixnum canna_ichiran_length;
188 static int canna_ichiran_revPos; 188 static Fixnum canna_ichiran_revPos;
189 static int canna_ichiran_revLen; 189 static Fixnum canna_ichiran_revLen;
190 static Lisp_Object Vcanna_mode_string; 190 static Lisp_Object Vcanna_mode_string;
191 191
192 static int IRCP_context; 192 static int IRCP_context;
193 193
194 static Lisp_Object storeResults (unsigned char *, int, jrKanjiStatus *); 194 static Lisp_Object storeResults (unsigned char *, int, jrKanjiStatus *);
197 197
198 #ifdef CANNA_MULE 198 #ifdef CANNA_MULE
199 static void m2c (unsigned char *, int, unsigned char *); 199 static void m2c (unsigned char *, int, unsigned char *);
200 static Lisp_Object mule_make_string (unsigned char *, int); 200 static Lisp_Object mule_make_string (unsigned char *, int);
201 static int mule_strlen (unsigned char *, int); 201 static int mule_strlen (unsigned char *, int);
202 static void count_char (unsigned char *,int, int, int, int *, int *, int *); 202 static void count_char (unsigned char *,int, int, int, Fixnum *, Fixnum *, Fixnum *);
203 #define make_string mule_make_string 203 #define make_string mule_make_string
204 #endif 204 #endif
205 205
206 /* Lisp functions definition */ 206 /* Lisp functions definition */
207 207
885 return Qt; 885 return Qt;
886 } 886 }
887 887
888 /* variables below this line is constants of Canna */ 888 /* variables below this line is constants of Canna */
889 889
890 static int canna_mode_AlphaMode; 890 static Fixnum canna_mode_AlphaMode;
891 static int canna_mode_EmptyMode; 891 static Fixnum canna_mode_EmptyMode;
892 static int canna_mode_KigoMode; 892 static Fixnum canna_mode_KigoMode;
893 static int canna_mode_YomiMode; 893 static Fixnum canna_mode_YomiMode;
894 static int canna_mode_JishuMode; 894 static Fixnum canna_mode_JishuMode;
895 static int canna_mode_TankouhoMode; 895 static Fixnum canna_mode_TankouhoMode;
896 static int canna_mode_IchiranMode; 896 static Fixnum canna_mode_IchiranMode;
897 static int canna_mode_YesNoMode; 897 static Fixnum canna_mode_YesNoMode;
898 static int canna_mode_OnOffMode; 898 static Fixnum canna_mode_OnOffMode;
899 #ifdef CANNA_MODE_AdjustBunsetsuMode 899 #ifdef CANNA_MODE_AdjustBunsetsuMode
900 static int canna_mode_AdjustBunsetsuMode; 900 static Fixnum canna_mode_AdjustBunsetsuMode;
901 #endif 901 #endif
902 #ifdef CANNA_MODE_ChikujiYomiMode 902 #ifdef CANNA_MODE_ChikujiYomiMode
903 static int canna_mode_ChikujiYomiMode; 903 static Fixnum canna_mode_ChikujiYomiMode;
904 static int canna_mode_ChikujiTanMode; 904 static Fixnum canna_mode_ChikujiTanMode;
905 #endif 905 #endif
906 906
907 static int canna_mode_HenkanMode; 907 static Fixnum canna_mode_HenkanMode;
908 #ifdef CANNA_MODE_HenkanNyuryokuMode 908 #ifdef CANNA_MODE_HenkanNyuryokuMode
909 static int canna_mode_HenkanNyuryokuMode; 909 static Fixnum canna_mode_HenkanNyuryokuMode;
910 #endif 910 #endif
911 #ifdef CANNA_MODE_ZenHiraHenkanMode 911 #ifdef CANNA_MODE_ZenHiraHenkanMode
912 static int canna_mode_ZenHiraHenkanMode; 912 static Fixnum canna_mode_ZenHiraHenkanMode;
913 #ifdef CANNA_MODE_HanHiraHenkanMode 913 #ifdef CANNA_MODE_HanHiraHenkanMode
914 static int canna_mode_HanHiraHenkanMode; 914 static Fixnum canna_mode_HanHiraHenkanMode;
915 #endif 915 #endif
916 static int canna_mode_ZenKataHenkanMode; 916 static Fixnum canna_mode_ZenKataHenkanMode;
917 static int canna_mode_HanKataHenkanMode; 917 static Fixnum canna_mode_HanKataHenkanMode;
918 static int canna_mode_ZenAlphaHenkanMode; 918 static Fixnum canna_mode_ZenAlphaHenkanMode;
919 static int canna_mode_HanAlphaHenkanMode; 919 static Fixnum canna_mode_HanAlphaHenkanMode;
920 #endif 920 #endif
921 static int canna_mode_ZenHiraKakuteiMode; 921 static Fixnum canna_mode_ZenHiraKakuteiMode;
922 #ifdef CANNA_MODE_HanHiraKakuteiMode 922 #ifdef CANNA_MODE_HanHiraKakuteiMode
923 static int canna_mode_HanHiraKakuteiMode; 923 static Fixnum canna_mode_HanHiraKakuteiMode;
924 #endif 924 #endif
925 static int canna_mode_ZenKataKakuteiMode; 925 static Fixnum canna_mode_ZenKataKakuteiMode;
926 static int canna_mode_HanKataKakuteiMode; 926 static Fixnum canna_mode_HanKataKakuteiMode;
927 static int canna_mode_ZenAlphaKakuteiMode; 927 static Fixnum canna_mode_ZenAlphaKakuteiMode;
928 static int canna_mode_HanAlphaKakuteiMode; 928 static Fixnum canna_mode_HanAlphaKakuteiMode;
929 static int canna_mode_HexMode; 929 static Fixnum canna_mode_HexMode;
930 static int canna_mode_BushuMode; 930 static Fixnum canna_mode_BushuMode;
931 static int canna_mode_ExtendMode; 931 static Fixnum canna_mode_ExtendMode;
932 static int canna_mode_RussianMode; 932 static Fixnum canna_mode_RussianMode;
933 static int canna_mode_GreekMode; 933 static Fixnum canna_mode_GreekMode;
934 static int canna_mode_LineMode; 934 static Fixnum canna_mode_LineMode;
935 static int canna_mode_ChangingServerMode; 935 static Fixnum canna_mode_ChangingServerMode;
936 static int canna_mode_HenkanMethodMode; 936 static Fixnum canna_mode_HenkanMethodMode;
937 static int canna_mode_DeleteDicMode; 937 static Fixnum canna_mode_DeleteDicMode;
938 static int canna_mode_TourokuMode; 938 static Fixnum canna_mode_TourokuMode;
939 static int canna_mode_TourokuEmptyMode; 939 static Fixnum canna_mode_TourokuEmptyMode;
940 static int canna_mode_TourokuHinshiMode; 940 static Fixnum canna_mode_TourokuHinshiMode;
941 static int canna_mode_TourokuDicMode; 941 static Fixnum canna_mode_TourokuDicMode;
942 static int canna_mode_QuotedInsertMode; 942 static Fixnum canna_mode_QuotedInsertMode;
943 static int canna_mode_BubunMuhenkanMode; 943 static Fixnum canna_mode_BubunMuhenkanMode;
944 static int canna_mode_MountDicMode; 944 static Fixnum canna_mode_MountDicMode;
945 945
946 static int canna_fn_SelfInsert; 946 static Fixnum canna_fn_SelfInsert;
947 static int canna_fn_FunctionalInsert; 947 static Fixnum canna_fn_FunctionalInsert;
948 static int canna_fn_QuotedInsert; 948 static Fixnum canna_fn_QuotedInsert;
949 static int canna_fn_JapaneseMode; 949 static Fixnum canna_fn_JapaneseMode;
950 static int canna_fn_AlphaMode; 950 static Fixnum canna_fn_AlphaMode;
951 static int canna_fn_HenkanNyuryokuMode; 951 static Fixnum canna_fn_HenkanNyuryokuMode;
952 static int canna_fn_Forward; 952 static Fixnum canna_fn_Forward;
953 static int canna_fn_Backward; 953 static Fixnum canna_fn_Backward;
954 static int canna_fn_Next; 954 static Fixnum canna_fn_Next;
955 static int canna_fn_Prev; 955 static Fixnum canna_fn_Prev;
956 static int canna_fn_BeginningOfLine; 956 static Fixnum canna_fn_BeginningOfLine;
957 static int canna_fn_EndOfLine; 957 static Fixnum canna_fn_EndOfLine;
958 static int canna_fn_DeleteNext; 958 static Fixnum canna_fn_DeleteNext;
959 static int canna_fn_DeletePrevious; 959 static Fixnum canna_fn_DeletePrevious;
960 static int canna_fn_KillToEndOfLine; 960 static Fixnum canna_fn_KillToEndOfLine;
961 static int canna_fn_Henkan; 961 static Fixnum canna_fn_Henkan;
962 static int canna_fn_Kakutei; 962 static Fixnum canna_fn_Kakutei;
963 static int canna_fn_Extend; 963 static Fixnum canna_fn_Extend;
964 static int canna_fn_Shrink; 964 static Fixnum canna_fn_Shrink;
965 #ifdef CANNA_FN_AdjustBunsetsu 965 #ifdef CANNA_FN_AdjustBunsetsu
966 static int canna_fn_AdjustBunsetsu; 966 static Fixnum canna_fn_AdjustBunsetsu;
967 #endif 967 #endif
968 static int canna_fn_Quit; 968 static Fixnum canna_fn_Quit;
969 static int canna_fn_ConvertAsHex; 969 static Fixnum canna_fn_ConvertAsHex;
970 static int canna_fn_ConvertAsBushu; 970 static Fixnum canna_fn_ConvertAsBushu;
971 static int canna_fn_KouhoIchiran; 971 static Fixnum canna_fn_KouhoIchiran;
972 static int canna_fn_BubunMuhenkan; 972 static Fixnum canna_fn_BubunMuhenkan;
973 static int canna_fn_Zenkaku; 973 static Fixnum canna_fn_Zenkaku;
974 static int canna_fn_Hankaku; 974 static Fixnum canna_fn_Hankaku;
975 static int canna_fn_ToUpper; 975 static Fixnum canna_fn_ToUpper;
976 static int canna_fn_Capitalize; 976 static Fixnum canna_fn_Capitalize;
977 static int canna_fn_ToLower; 977 static Fixnum canna_fn_ToLower;
978 static int canna_fn_Hiragana; 978 static Fixnum canna_fn_Hiragana;
979 static int canna_fn_Katakana; 979 static Fixnum canna_fn_Katakana;
980 static int canna_fn_Romaji; 980 static Fixnum canna_fn_Romaji;
981 #ifdef CANNA_FN_BaseHiragana 981 #ifdef CANNA_FN_BaseHiragana
982 static int canna_fn_BaseHiragana; 982 static Fixnum canna_fn_BaseHiragana;
983 static int canna_fn_BaseKatakana; 983 static Fixnum canna_fn_BaseKatakana;
984 static int canna_fn_BaseEisu; 984 static Fixnum canna_fn_BaseEisu;
985 static int canna_fn_BaseZenkaku; 985 static Fixnum canna_fn_BaseZenkaku;
986 static int canna_fn_BaseHankaku; 986 static Fixnum canna_fn_BaseHankaku;
987 static int canna_fn_BaseKana; 987 static Fixnum canna_fn_BaseKana;
988 static int canna_fn_BaseKakutei; 988 static Fixnum canna_fn_BaseKakutei;
989 static int canna_fn_BaseHenkan; 989 static Fixnum canna_fn_BaseHenkan;
990 static int canna_fn_BaseHiraKataToggle; 990 static Fixnum canna_fn_BaseHiraKataToggle;
991 static int canna_fn_BaseZenHanToggle; 991 static Fixnum canna_fn_BaseZenHanToggle;
992 static int canna_fn_BaseKanaEisuToggle; 992 static Fixnum canna_fn_BaseKanaEisuToggle;
993 static int canna_fn_BaseKakuteiHenkanToggle; 993 static Fixnum canna_fn_BaseKakuteiHenkanToggle;
994 static int canna_fn_BaseRotateForward; 994 static Fixnum canna_fn_BaseRotateForward;
995 static int canna_fn_BaseRotateBackward; 995 static Fixnum canna_fn_BaseRotateBackward;
996 #endif 996 #endif
997 static int canna_fn_ExtendMode; 997 static Fixnum canna_fn_ExtendMode;
998 static int canna_fn_Touroku; 998 static Fixnum canna_fn_Touroku;
999 static int canna_fn_HexMode; 999 static Fixnum canna_fn_HexMode;
1000 static int canna_fn_BushuMode; 1000 static Fixnum canna_fn_BushuMode;
1001 static int canna_fn_KigouMode; 1001 static Fixnum canna_fn_KigouMode;
1002 #ifdef CANNA_FN_Mark 1002 #ifdef CANNA_FN_Mark
1003 static int canna_fn_Mark; 1003 static Fixnum canna_fn_Mark;
1004 #endif 1004 #endif
1005 #ifdef CANNA_FN_TemporalMode 1005 #ifdef CANNA_FN_TemporalMode
1006 static int canna_fn_TemporalMode; 1006 static Fixnum canna_fn_TemporalMode;
1007 #endif 1007 #endif
1008 1008
1009 static int canna_key_Nfer; 1009 static Fixnum canna_key_Nfer;
1010 static int canna_key_Xfer; 1010 static Fixnum canna_key_Xfer;
1011 static int canna_key_Up; 1011 static Fixnum canna_key_Up;
1012 static int canna_key_Left; 1012 static Fixnum canna_key_Left;
1013 static int canna_key_Right; 1013 static Fixnum canna_key_Right;
1014 static int canna_key_Down; 1014 static Fixnum canna_key_Down;
1015 static int canna_key_Insert; 1015 static Fixnum canna_key_Insert;
1016 static int canna_key_Rollup; 1016 static Fixnum canna_key_Rollup;
1017 static int canna_key_Rolldown; 1017 static Fixnum canna_key_Rolldown;
1018 static int canna_key_Home; 1018 static Fixnum canna_key_Home;
1019 static int canna_key_Help; 1019 static Fixnum canna_key_Help;
1020 static int canna_key_KP_Key; 1020 static Fixnum canna_key_KP_Key;
1021 static int canna_key_Shift_Nfer; 1021 static Fixnum canna_key_Shift_Nfer;
1022 static int canna_key_Shift_Xfer; 1022 static Fixnum canna_key_Shift_Xfer;
1023 static int canna_key_Shift_Up; 1023 static Fixnum canna_key_Shift_Up;
1024 static int canna_key_Shift_Left; 1024 static Fixnum canna_key_Shift_Left;
1025 static int canna_key_Shift_Right; 1025 static Fixnum canna_key_Shift_Right;
1026 static int canna_key_Shift_Down; 1026 static Fixnum canna_key_Shift_Down;
1027 static int canna_key_Cntrl_Nfer; 1027 static Fixnum canna_key_Cntrl_Nfer;
1028 static int canna_key_Cntrl_Xfer; 1028 static Fixnum canna_key_Cntrl_Xfer;
1029 static int canna_key_Cntrl_Up; 1029 static Fixnum canna_key_Cntrl_Up;
1030 static int canna_key_Cntrl_Left; 1030 static Fixnum canna_key_Cntrl_Left;
1031 static int canna_key_Cntrl_Right; 1031 static Fixnum canna_key_Cntrl_Right;
1032 static int canna_key_Cntrl_Down; 1032 static Fixnum canna_key_Cntrl_Down;
1033 1033
1034 Lisp_Object VCANNA; /* by MORIOKA Tomohiko <morioka@jaist.ac.jp> 1034 Lisp_Object VCANNA; /* by MORIOKA Tomohiko <morioka@jaist.ac.jp>
1035 1996/6/7 */ 1035 1996/6/7 */
1036 1036
1037 void 1037 void
1894 return (len); 1894 return (len);
1895 } 1895 }
1896 1896
1897 /* count number of characters */ 1897 /* count number of characters */
1898 static void 1898 static void
1899 count_char (unsigned char *p, int len, int pos, int rev, int *clen, int *cpos, 1899 count_char (unsigned char *p, int len, int pos, int rev,
1900 int *crev) 1900 Fixnum *clen, Fixnum *cpos, Fixnum *crev)
1901 { 1901 {
1902 unsigned char *q = p; 1902 unsigned char *q = p;
1903 1903
1904 *clen = *cpos = *crev = 0; 1904 *clen = *cpos = *crev = 0;
1905 if (len == 0) return; 1905 if (len == 0) return;