Rechercher une page de manuel
uilib
Langue: ja
Version: 4 April 1991 (debian - 07/07/09)
Section: 3 (Bibliothèques de fonctions)
Sommaire
ÌŸÁ°
UILib intro - ¥æ¡Œ¥¶¥€¥ó¥¿¥Õ¥§¡Œ¥¹¥é¥€¥Ö¥é¥ê¥€¥ó¥È¥íÀâÌÀ
¥æ¡Œ¥¶¥€¥ó¥¿¥Õ¥§¡Œ¥¹¥é¥€¥Ö¥é¥ê€Ï¡€£±Êž»ú€ÎÆþÎÏ¡€£±¥¡Œ€ÎÆþÎÏ€ËÂбþ€·€Æ¡€ Ì€³ÎÄêÊž»úÎó¡€³ÎÄêÊž»úÎó¡€ÃíÌÜÊžÀá°ÌÃÖ¡€¥¹¥Æ¡Œ¥¿¥¹ÉœŒš€Î€¿€á€ÎÊž»úÎó¡€ žõÊä°ìÍ÷€Î€¿€á€ÎÊž»úÎó€Ê€É€òÊÖŽÔ€¹€ë¥é¥€¥Ö¥é¥ê€Ç€¹¡¥¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥× ¥í¥°¥é¥à€Ï¡€ÊÖŽÔ€µ€ì€¿ŸðÊó€Ë€è€Ã€ÆÉœŒš€ò¹Ô€€€Þ€¹¡¥¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í ¥°¥é¥à€Ï¡€¥¡ŒÆþÎϰʳ°€Î¥È¥ê¥¬¡Œ€Ë€è€Ã€Æ(Î〚€Ð¥Þ¥Š¥¹€Ë€è€ëÁªÂò€Ê€É)¥â¡Œ ¥É€ÎÁ«°Ü€òÀ©žæ€¹€ë€³€È€â€Ç€€Þ€¹¡¥
¥æ¡Œ¥¶¥€¥ó¥¿¥Õ¥§¡Œ¥¹¥é¥€¥Ö¥é¥ê€Ç€Ï¡€TTY¥Ù¡Œ¥¹ €ÇjrKanjiString€ª€è€ÓjrKanjiControl¡€£Ø¥Š¥£¥ó¥É¥Š¥Ù¡Œ¥¹€Ç XLookupKanjiString€ª€è€ÓXKanjiControl€òÄ󶡀·€Þ€¹¡¥
¥æ¡Œ¥¶¥€¥ó¥¿¥Õ¥§¡Œ¥¹¥é¥€¥Ö¥é¥ê€ò»ÈÍÑ€¹€ëŸì¹ç€Ë€Ï°Ê²Œ€Î¥Õ¥¡¥€¥ë€¬É¬Í×€Ë €Ê€ê€Þ€¹¡¥
- ¡Š
- TTY¥Ù¡Œ¥¹
-
- ŽØ¿ô
- jrKanjiString, jrKanjiControl
- ¥Ø¥Ã¥À¥Õ¥¡¥€¥ë
- canna/jrkanji.h
- ¥é¥€¥Ö¥é¥ê
- libcanna.a, libcanna.so
-
- ¡Š
- X¥Š¥£¥ó¥É¥Š¥Ù¡Œ¥¹
-
- ŽØ¿ô
- XLookupKanjiString, XKanjiControl
- ¥Ø¥Ã¥À¥Õ¥¡¥€¥ë
- canna/kanji.h
- ¥é¥€¥Ö¥é¥ê
- libXn.a, libXn.so, libcanna.a, libcanna.so
-
³µÍ×
- jrKanjiString
- TTY€«€é€ÎÆþÎÏ¡€£Ø€Ç€ÎÆþÎÏ¡€ŽðËÜ¥Š¥£¥ó¥É¥Š€Ç€ÎÆþÎπʀɰìÈÌŪ€Ê¥¡Œ¥Ü¡Œ ¥ÉÆþÎÏ€ËÂЀ·€ÆŽÁ»úÊž»úÎó€Ø€ÎÊÑŽ¹€ò¹Ô€€€Þ€¹¡¥
- jrKanjiControl
- jrKanjiString€Ç€ÎÀ©žæ€ò»ØÄꀵ€ì€¿¥Ñ¥é¥á¥¿€Ë€è€ê¹Ô€€€Þ€¹¡¥
- XLookupKanjiString
- £Ø¥Š¥£¥ó¥É¥Š¥·¥¹¥Æ¥à€Ë€ª€€€Æ¡€¥¡Œ¥Ü¡Œ¥ÉÆþÎÏ(¥¡Œ¥€¥Ù¥ó¥È)€ÎŽÁ»úÊž»úÎó €Ø€ÎÊÑŽ¹€ò¹Ô€€€Þ€¹¡¥
- XKanjiControl
- XLookupKanjiString€Ç€ÎÀ©žæ€ò»ØÄꀵ€ì€¿¥Ñ¥é¥á¥¿€Ë€è€ê¹Ô€€€Þ€¹¡¥
ÌŸÁ°
jrKanjiString - °ìÈÌŪ̟¥¡Œ¥Ü¡Œ¥ÉÆþÎÏ€ËÂЀ·€Æ€Î€«€ÊŽÁ»úÊÑŽ¹·ÁŒ°
#include <canna/jrkanji.h> int jrKanjiString(context_id, ch, buffer_return, bytes_buffer, kanji_status_return) int context_id; int ch; char *buffer_return; int bytes_buffer; jrKanjiStatus *kanji_status_return;
ÀâÌÀ
jrKanjiString€ÏTTY€«€é€ÎÆþÎÏ¡€£Ø€Ç€ÎÆþÎÏ¡€ŽðËÜ¥Š¥£¥ó¥É¥Š€Ç€ÎÆþÎπʀɡ€ °ìÈÌŪ€Ê¥¡Œ¥Ü¡Œ¥ÉÆþÎÏ€ËÂЀ·€ÆŽÁ»úÊž»úÎó€Ø€ÎÊÑŽ¹€ò¹Ô€ŠŽØ¿ô€Ç€¹¡¥
jrKanjiString€Ï¡€¥¢¥¹¥¡Œ¥³¡Œ¥É€ÇÉœ€µ€ì€ë¥¡ŒÆþÎÏ€òÆüËÜžìÊž»úÎó€ËÂбþ €µ€»€ëŽÊ°×¥ë¡Œ¥Á¥ó€Ç¡€ÆþÎÏ€µ€ì€¿¥¡Œ€òÉœ€¹¥³¡Œ¥É€òch€Ë€ÆÍ¿€š€ë€³ €È€Ë€è€ê¡€ÉœŒš€¹€Ù€Êž»úÎó€òÊÖ€·€Þ€¹¡¥jrKanjiString€ÎÆâÉô€Ë€ª€€€Æ¥í¡Œ ¥Þ»ú€«€ÊÊÑŽ¹¡€€«€ÊŽÁ»úÊÑŽ¹€¬¹Ô€ï€ì€Þ€¹¡¥
¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥¡Œ€ä¡€¥«¡Œ¥œ¥ë¥¡Œ€Ê€É€Î¥¡Œ€Ë€Ä€€€Æ€Ï¡€€œ€ì€é€Î¥¡Œ€Î ȯÀž€¹€ë¥š¥¹¥±¡Œ¥×¥·¡Œ¥±¥ó¥¹€Î Âå€ï€ê€Ë¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥¡Œ€Î¹à€ÇŒš€¹ÆÃỀΠ¥³¡Œ¥É€òjrKanjiString€ËÍ¿€š€Æ²Œ€µ€€¡¥
context_id€ÇÍ¿€š€ë¥³¥ó¥Æ¥¯¥¹¥ÈŒ±Ê̻Ҁϡ€ŒÂºÝ€Ë€Ï€œ€Î€Þ€Þ€ÎÃÍ€¬ÍÑ €€€é€ì€ë€ï€±€Ç€Ï€Ê€¯¡€context_id€ÇÍ¿€š€é€ì€ë¥³¥ó¥Æ¥¯¥¹¥ÈŒ±Ê̻Ҁò ¥¡Œ€È€·€¿¥³¥ó¥Æ¥¯¥¹¥È€¬ºîÀ®€µ€ì¡€ÍÑ€€€é€ì€ë€³€È€Ë€Ê€ê€Þ€¹¡¥€·€¿€¬€Ã€Æ ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥Þ€ÏjrKanjiString€ËÍ¿€š€ë¥³¥ó¥Æ¥¯¥¹¥ÈŒ±ÊÌ»Ò€Ë €Ä€€€Æ€Ï¡€Å¬Åö€ÊÃÍ€òÍ¿€š€ì€ÐÎÉ€¯¡€ÆþÎϥݡŒ¥È€Î¥Õ¥¡¥€¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿€ò Í¿€š€ë€Î€¬Å¬Åö€È¹Í€š€é€ì€Þ€¹¡¥€¿€À€·¡€0€òÍ¿€š€¿»þ€ÏÆÃỀǡ€¥·¥¹¥Æ¥à€Ë ¥Ç¥Õ¥©¥ë¥È€ÇœàÈ÷€µ€ì€Æ€€€ë¥³¥ó¥Æ¥¯¥¹¥È€¬ÍÑ€€€é€ì€Þ€¹¡¥¥³¥ó¥Æ¥¯¥¹¥È€ËÆà ÊÌ€ÎÇÛΞ€ò¹Ô€ï€Ê€€Ÿì¹ç€Ë€Ï0€ò»ØÄꀹ€ë€Î€¬Å¬Åö€Ç€¹¡¥
ÆþÎÏ€ËÂбþ€·€Æ¡€¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹¡€€«€ÊŽÁ»úÊÑŽ¹€ÎÃæŽÖ·ë²Ì€òÉœŒš€¹€ëɬÍ× €¬€¢€ê€Þ€¹€¬¡€ÉœŒš€¹€Ù€ÃæŽÖ·ë²Ì€Ïkanji_status_return€ò²ð€·€Æ¡€ ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó€ËÊÖ€µ€ì€Þ€¹¡¥
¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó€Ïkanji_status_return€ËÊÖ€µ€ì€ëŸðÊó€Ë€·€¿€¬€Ã€Æ ÃæŽÖ·ë²Ì€òÉœŒš€·€Ê€±€ì€Ð€Ê€ê€Þ €»€ó¡¥kanji_status_return€ÏjrKanjiStatus·¿€Î¹œÂ€Â΀ǀ¹¡¥
jrKanjiStatus¹œÂ€Â΀ϰʲŒ€Î€è€Š€ËÄêµÁ€µ€ì€Þ€¹¡¥
typedef struct { unsigned char *echoStr; /* ¥í¡Œ¥«¥ë¥š¥³¡Œ€Î€¿€á€ÎÊž»úÎó */ int length; /* ¥í¡Œ¥«¥ë¥š¥³¡ŒÊž»úÎó€ÎĹ€µ */ int revPos; /* ¥í¡Œ¥«¥ë¥š¥³¡ŒÊž»úÎó€Î€Š€ÁÈ¿ÅŸÉœŒšÉôʬ€Ø€Î¥ª¥Õ¥»¥Ã¥È */ int revLen; /* ¥í¡Œ¥«¥ë¥š¥³¡ŒÊž»úÎó€Î€Š€ÁÈ¿ÅŸÉœŒšÉôʬ€ÎĹ€µ */ unsigned long info; /* €œ€ÎŸ€ÎŸðÊó */ unsigned char *mode; /* ¥â¡Œ¥ÉŸðÊó */ struct { unsigned char *line; /* žõÊä°ìÍ÷€ÎÊž»úÎó */ int length; /* žõÊä°ìÍ÷Êž»úÎó€ÎĹ€µ */ int revPos; /* žõÊä°ìÍ÷Êž»úÎó€Î€Š€ÁÈ¿ÅŸÉœŒšÉôʬ€Ø€Î¥ª¥Õ¥»¥Ã¥È */ int revLen; /* žõÊä°ìÍ÷Êž»úÎó€Î€Š€ÁÈ¿ÅŸÉœŒšÉôʬ€ÎĹ€µ */ } gline; /* žõÊä°ìÍ÷€ËŽØ€¹€ëŸðÊó */ } jrKanjiStatus;
€«€ÊŽÁ»úÊÑŽ¹€òÍÑ€€€¿ÆüËÜžìÆþÎÏ»þ€Ë€ÏÊÑŽ¹€ÎÂП݀ȀʀëÆɀ߀ʀɀò¥í¡Œ¥«¥ë ¥š¥³¡Œ€¹€ëɬÍ×€¬€¢€ê€Þ€¹¡¥jrKanjiString€Ï¥í¡Œ¥«¥ë¥š¥³¡Œ€Ê€ÉÉœŒš€ËŽØ€¹ €ë€³€È€Ï²¿€â¹Ô€ï€º¡€Âå€ï€ê€Ë¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€ë€Ù€ Êž»úÎó€òjrKanjiStatus¹œÂ€Â΀òÍÑ€€€Æ¥¢¥×¥ê¥±¡Œ¥·¥ç¥óŠ€ËÊÖ€·€Þ€¹¡¥
ÊÑŽ¹€¬³ÎÄꀹ€ë€Þ€Ç€Ï¡€¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹€µ€ì€Æ€€€ëÊž»ú€ä¡€ÊÑŽ¹žõÊäÊž»ú€Ê €É¡€¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€(EUC)Êž»úÎó€¬echoStr¥á¥ó¥Ð€Ë€è€êÊÖ€µ€ì€Þ €¹¡¥€³€Î€È€¡€¥í¡Œ¥«¥ë¥š¥³¡ŒÊž»úÎó€ÎĹ€µ¡€¥ê¥Ð¡Œ¥¹ÉœŒš€Î ³«»Ï°ÌÃÖ€ÈĹ€µ(¥Ð¥€¥Èñ°Ì)€¬¡€ €œ€ì€Ÿ€ì¡€length¥á¥ó¥Ð¡€revPos¡€revLen¥á¥ó¥Ð€Ë€ÆÊÖ€µ€ì€Þ€¹¡¥¥í¡Œ ¥«¥ë¥š¥³¡Œ€¹€Ù€Êž»úÎó€Î€¿€á€Î¥Ð¥Ã¥Õ¥¡€ÏjrKanjiString€Ë€è€Ã€ÆŒ«Æ°Åª€Ë ³ÎÊÝ€µ€ì€Þ€¹€¬¡€€œ€ÎÎΰè€ÏÆɀ߀Ȁê€Î€ß€ËÍÑ€€€é€ì€ë€Ù€€Ç€¢€ê¡€€œ€ÎÎÎ°è €ËÊž»úÎó€òœñ€¹þ€ó€Ç€Ï€€€±€Þ€»€ó¡¥
¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€Êž»úÎ󀬀ʀ€Ÿì¹ç€Ïlength¥á¥ó¥Ð€Ë£°€¬ÊÖ€ê€Þ€¹¡¥
¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€ÆâÍÆ€¬Á°²ó€ÎjrKanjiString€ÎžÆœÐ€·€Î»þ€ÈÊÑ€ï€é€Ê€€ Ÿì¹ç(Î〚€Ð¥³¥ó¥È¥í¡Œ¥ëÊž»ú€¬²¡€µ€ì¡€€œ€Î¥¡Œ€¬Ìµžú€Ç€¢€Ã€¿ Ÿì¹ç€Ê€É)€Ïlength¥á¥ó¥Ð€Ë-1€¬ÊÖ€ê€Þ€¹¡¥
¥â¡Œ¥É€ÎÊѹ¹€ä¡€žõÊä°ìÍ÷€ËŽØ€¹€ëŸðÊó€ÎÍ̵€Ï¡€info¥á¥ó¥Ð€Ë€è€Ã€Æ ÅÏ€µ€ì€Þ€¹¡¥info¥á¥ó¥Ð€ÎKanjiModeInfo¥Ó¥Ã¥È€¬on€Ç €¢€ì€Ð¡€mode€Ë¿·€·€€¥â¡Œ¥É€òŒš€¹Êž»úÎó€¬ÊÖ€µ€ì€Þ€¹¡¥info¥á ¥ó¥Ð€ÎKanjiGLineInfo¥Ó¥Ã¥È€¬on€Ç€¢€ì€Ð¡€gline¹œÂ€Â΀˞õÊä°ìÍ÷Åù €ÎŸðÊ󀬳ÊÇŒ€µ€ì€Æ€€€Þ€¹¡¥
gline¹œÂ€Â΀Îline¥á¥ó¥Ð€Ë€ÏžõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÊž»úÎó€¬ÊÖ €µ€ì€Þ€¹¡¥gline¹œÂ€Â΀Îline,revPos,revLen€Î³Æ¥á¥ó¥Ð€Ï¡€žõ Êä°ìÍ÷Êž»úÎó€Î€œ€ì€Ÿ€ì¡€Ä¹€µ¡€¥ê¥Ð¡Œ¥¹ÉœŒš€Î³«»Ï°ÌÃÖ¡€¥ê¥Ð¡Œ¥¹ÉœŒš€ÎĹ €µ€¬ÊÖ€µ€ì€Þ€¹¡¥
ÊÑŽ¹Ãæ€Ë³ÎÄꀷ€¿(EUC)Êž»úÎ󀬀¢€ëŸì¹ç€Ï¡€ €œ€ÎÊž»úÎó€¬buffer_return€Ç»ØÄꀷ€¿¥Ð¥Ã¥Õ¥¡€Ë³ÊÇŒ€µ€ì¡€€œ€ÎÊž»ú Îó€ÎĹ€µ(¥Ð¥€¥Èñ°Ì)€¬ÊÖ€µ€ì€Þ€¹¡¥³ÎÄꀷ€¿Êž»úÎó€¬Ìµ€€Ÿì¹ç€ÏÌá€ê ÃÍ€Ï0€Ë€Ê€ê€Þ€¹¡¥³ÎÄêÊž»úÎó€ò³ÊÇŒ€¹€ë¥Ð¥Ã¥Õ¥¡buffer_return€ÎÂç€ €µ€òbytes_buffer€Ë€ÆÍ¿€š€Þ€¹¡¥ ³ÎÄêÊž»úÎó€ÎĹ€µ€¬bytes_buffer€è€ê€âĹ€€Ÿì¹ç€Ë€Ï¡€ ³ÎÄêÊž»úÎó€Î€Š€Á¡€bytes_bufferʬ €À€±€¬buffer_return€Ë³ÊÇŒ€µ€ì¡€jrKanjiString€ÎÌá€êÃÍ€È €·€Æ¡€bytes_buffer€ÇÍ¿€š€¿ÃÍ€¬ÊÖ€ê€Þ€¹¡¥
¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥¡Œ
¥š¥¹¥±¡Œ¥×¥·¡Œ¥±¥ó¥¹€òȯ¹Ô€¹€ë€è€Š€Ê¥Õ¥¡¥ó¥¯¥·¥ç¥ó¥¡Œ€ËŽØ€·€Æ€Ï¡€¥Õ¥¡ ¥ó¥¯¥·¥ç¥ó¥¡Œ€Ë€è€ë¥š¥¹¥±¡Œ¥×¥·¡Œ¥±¥ó¥¹€ÎÊÑ€ï€ê€Ë°Ê²Œ€Î¥Þ¥¯¥íÌŸ€ÇŒš€µ €ì€ë¥³¡Œ¥É€òch€È€·€ÆÍ¿€š€Æ²Œ€µ€€¡¥
- ÏÀÍýÌŸ
- ¥³¡Œ¥É
- Nfer
- CANNA_KEY_Nfer
- Xfer
- CANNA_KEY_Xfer
- Up
- CANNA_KEY_Up
- Left
- CANNA_KEY_Left
- Right
- CANNA_KEY_Right
- Down
- CANNA_KEY_Down
- Insert
- CANNA_KEY_Insert
- Rollup
- CANNA_KEY_Rollup
- Rolldown
- CANNA_KEY_Rolldown
- Home
- CANNA_KEY_Home
- Help
- CANNA_KEY_Help
- S-Nfer
- CANNA_KEY_Shift_Nfer
- S-Xfer
- CANNA_KEY_Shift_Xfer
- S-Up
- CANNA_KEY_Shift_Up
- S-Left
- CANNA_KEY_Shift_Left
- S-Right
- CANNA_KEY_Shift_Right
- S-Down
- CANNA_KEY_Shift_Down
- C-Nfer
- CANNA_KEY_Control_Nfer
- C-Xfer
- CANNA_KEY_Control_Xfer
- C-Up
- CANNA_KEY_Control_Up
- C-Left
- CANNA_KEY_Control_Left
- C-Right
- CANNA_KEY_Control_Right
- C-Down
- CANNA_KEY_Control_Down
- F1
- CANNA_KEY_F1
- PF1
- CANNA_KEY_PF1
ŽØÏ¢ŸðÊó
jrKanjiControl(3)Ìá€êÃÍ
ÆþÎÏœèÍýÃ沿€é€«€Î¥š¥é¡Œ€¬È¯Àž€·€¿Ÿì¹ç€Ï¡€€³€ÎŽØ¿ô€ÎÌá€êÃ̀Ȁ·€Æ-1€¬ÊÖ €µ€ì¡€³°ÉôÊÑ¿ô(char *)jrKanjiError€Ë¡€¥š¥é¡Œ¥á¥Ã¥»¡Œ¥ž€¬³ÊÇŒ€µ€ì€Þ€¹¡¥
€³€ÎŽØ¿ô€ÎžÆœÐ€·€Ë€è€ê³ÎÄꀷ€¿Êž»úÎ󀬀¢€ëŸì¹ç€Ï³ÎÄꀷ€¿Êž»úÎó€Î¥Ð¥€¥È Ĺ€¬ÊÖ€ê€Þ€¹¡¥
€œ€ì°Ê³°€ÎŸì¹ç€Ï0€¬ÊÖ€ê€Þ€¹¡¥
ÌŸÁ°
jrKanjiControl - jrKanjiString€Ç€Î¥â¡Œ¥É€ä¡€œèÍý€ÎÀ©žæ€ò¹Ô€Š·ÁŒ°
#include <canna/jrkanji.h> int jrKanjiControl(context_id, request, arg) int context_id; int request; char *arg;
ÀâÌÀ
jrKanjiControl€Ïcontext_id€ÇŒš€µ€ì€ëÊÑŽ¹¥³¥ó¥Æ¥¯¥¹¥È€Ë ŽØ€·€Æ¡€request€ÇŒš€µ€ì€ëœèÍý€ò¹Ô€€€Þ€¹¡¥œèÍý€Ë€è€Ã€Æ€Ï¡€°ú¿ô€ò ÈŒ€ŠŸì¹ç€¬€¢€ê¡€€œ€ÎŸì¹ç¡€°ú¿ô€Ïarg€Ë€ÆÍ¿€š€Þ€¹¡¥
jrKanjiControl€ÇÀ©žæ€µ€ì€ëµ¡Çœ€È€·€Æ€Ï°Ê²Œ€Î£µ€Ä€¬€¢€ê€Þ€¹¡¥
- requestÌŸ
- µ¡Çœ
- KC_INITIALIZE
- €«€ÊŽÁ»úÊÑŽ¹€òœéŽü²œ€¹€ë¡¥
- KC_CHANGEMODE
- ÆþÎϥ⡌¥É€òÊѹ¹€¹€ë¡¥
- KC_SETWIDTH
- žõÊä°ìÍ÷ÉœŒš€Î»þ€ÎÉý€ò»ØÄꀹ€ë¡¥
- KC_FINALIZE
- €«€ÊŽÁ»úÊÑŽ¹€ÎœªÎ»œèÍý¡¥
- KC_SETUNDEFKEYFUNCTION
- Ì€ÄêµÁ¥¡Œ€ËÂЀ¹€ëµ¡Çœ€ÎÀßÄê€ò¹Ô€Š¡¥
- KC_SETMODEINFOSTYLE
- ¥â¡Œ¥ÉŸðÊó€ò¿ôÃÍ€ÇÉœžœ€¹€ë€«€É€Š€«€ò»ØÄꀹ€ë¡¥
- KC_KAKUTEI
- ÆþÎÏÃæ€ÎÊž»úÎó€ò³ÎÄꀹ€ë¡¥
- KC_KILL
- ÆþÎÏÃæ€ÎÊž»úÎó€òºïœü€¹€ë¡¥
- KC_QUERYMODE
- žœºß€Î¥â¡Œ¥É€òÌ䀀¹ç€ï€»€ë¡¥
- KC_SETSERVERNAME
- Àܳ€¹€ë¥µ¡Œ¥Ð€ò»ØÄꀹ€ë¡¥
- KC_SETINITFILENAME
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ò»ØÄꀹ€ë¡¥
- KC_CLOSEUICONTEXT
- ¥³¥ó¥Æ¥¯¥¹¥È€ò¥¯¥í¡Œ¥º€¹€ë¡¥
- KC_QUERYMAXMODESTR
- ¥â¡Œ¥ÉÉœŒšÊž»úÎó€ÎºÇÂçĹ€òµá€á€ë¡¥
jrKanjiControl€ÎºîÍрώðËÜŪ€Ë€Ï¥³¥ó¥Æ¥¯¥¹¥È€Ç»ØÄꀵ€ì€¿€â€Î€ËÂЀ·€Æ€Î €ßºîÍÑ€·€Þ€¹¡¥€¿€À€·¡€œéŽü²œ€ÎœèÍý€äœªÎ»€ÎœèÍý€ËŽØ€·€Æ€Ï€œ€ÎžÂ€ê€Ç€Ï€¢ €ê€Þ€»€ó¡¥
jrKanjiControl€ÎÁàºî€Ë€è€Ã€ÆÌ€³ÎÄêÊž»úÎó€ÎŸõÂÖ€¬ÊѲœ€·€¿€ê¡€¥â¡Œ¥É€ÎŸõ ÂÖ€¬ÊÑ€ï€ë€³€È€¬€¢€ê€Þ€¹¡¥€œ€Î€è€Š€Ê²ÄÇœÀ€¬€¢€ëŸì¹ç€ÏargÉôʬ€ËÊѲœ€· €¿ŸðÊó€ò³ÊÇŒ€Ç€€ë€è€Š€Ê¹œÂ€Â΀؀Υݥ€¥ó¥¿€òÅÏ€·€Þ€¹¡¥€œ€Î¹œÂ€Â΀ÎÄêµÁ €Ï°Ê²Œ€Î€è€Š€Ë€Ê€ê€Þ€¹¡¥
typedef struct { int val; /* ¥Ð¥Ã¥Õ¥¡€Ë³ÊÇŒ€µ€ì€¿Êž»úÎó€ÎĹ€µ€¬ÊÖ€ë */ unsigned char *buffer; /* ³ÎÄêÊž»úÎó€ò³ÊÇŒ€¹€ë€¿€á€Î¥Ð¥Ã¥Õ¥¡€òÍ¿€š€ë */ int bytes_buffer; /* Ÿåµ€Î¥Ð¥Ã¥Õ¥¡€ÎÂ瀀µ€òÍ¿€š€ë */ jrKanjiStatus *ks; /* Ì€³ÎÄêÊž»úÎó€ÎŸðÊó€ò³ÊÇŒ€¹€ë¹œÂ€Â΀؀Υݥ€¥ó¥¿ */ } jrKanjiStatusWithValue;
jrKanjiControl€Î€œ€ì€Ÿ€ì€Îµ¡Çœ€ÎŒÂ¹Ô€Î€·€«€¿€Ï°Ê²Œ€ÎÄÌ€ê€Ç€¹¡¥
- (1)
- KC_INITIALIZE - €«€ÊŽÁ»úÊÑŽ¹€ÎœéŽü²œ
KC_INITIALIZE€òrequestÉô€Ç»ØÄꀹ€ë€³€È€Ë€è€ê¡€€«€ÊŽÁ»úÊÑŽ¹€ÎœéŽü ²œ€ò¹Ô€€€Þ€¹¡¥arg€Ë€Ïwarning¥á¥Ã¥»¡Œ¥ž€ò ³ÊÇŒ€¹€ë€¿€á€Î(char **)·¿€ÎÊÑ¿ô€Ø€Î¥Ý¥€¥ó¥¿€Þ€¿€ÏNULL€ò»ØÄꀷ€Þ€¹¡¥œé Žü²œ€ÎœèÍý€ÏŽðËÜŪ€Ë€ÏjrKanjiString(3)€¬ºÇœé€ËžÆ€Ð€ì€¿»þ€ËŒ«Æ°Åª€Ë¹Ô€ï €ì€Þ€¹€¬¡€jrKanjiControl€òÍÑ€€€ÆœéŽü²œ€¹€ë €³€È€Ë€è€ê¡€jrKanjiString(3)€Ç€ÎœéŽü²œœèÍý€Ï¹Ô€ï€ì€Ê€¯€Ê€ê€Þ€¹¡¥
jrKanjiString(3)€Î»ÈÍÑ€ËÀèΩ€Ã€ÆjrKanjiControl€òÍÑ€€€Æ€«€ÊŽÁ»úÊÑŽ¹€ËŽØ €¹€ëÀ©žæ€ò¹Ô€Š»þ€Ê€É€Ï¡€ŽÁ»úÊÑŽ¹€ÎœéŽü²œ€ò¹Ô€ŠÉ¬Í×€¬€¢€ê€Þ€¹¡¥
ÀµŸïœªÎ»»þ€Ë€ÏjrKanjiControl€ÎÌá€êÃ̀Ȁ·€Æ0€¬Êրꡀ°ÛŸïœªÎ»»þ€Ë€Ï-1€¬ ÊÖ€ê€Þ€¹¡¥
KC_INITIALIZE€ò¹Ô€Ã€¿Ÿì¹ç¡€¥š¥é¡Œ€È€Þ€Ç€Ï€€€«€Ê€¯€È€â²¿€é€«€Îwarning€¬ ȯÀž€¹€ë€³€È€¬€¢€ê€Þ€¹¡¥warning€¬È¯Àž€·€¿Ÿì¹ç€Ïarg€Ë€ÆÍ¿€š€é€ì€¿ ÊÑ¿ô€ËÂЀ·€ÆwarningÊž»úÎó€ÎÇÛÎó€Ø€Î¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ì ÊÖ€µ€ì€Þ€¹¡¥warning€¬€Ê€€€È€€ÏNULL€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥
(Îã)-
int res; /* ¥š¥é¡Œ€¬ÊրÀƀ¯€ëŸì¹ç€ËÈ÷€š€ë */ char **warning; ..... res = jrKanjiControl(0, KC_INITIALIZE, &warning); if (warning) { char **p; for (p = warning ; *p ; p++) { fprintf(stderr, "%s, *p); } }
Â裳°ú¿ô€ËÊÖ€µ€ì€ëwarning¥á¥Ã¥»¡Œ¥ž€Ï¥é¥€¥Ö¥é¥ê€ÎÆâÉô€Çmalloc€µ€ì€Þ€¹¡¥ €³€ì€Ï¡€Œ¡€ËKC_INITIALIZE€äKC_FINALIZE€¬¹Ô€ï€ì€¿»þ€Ë³«Êü€µ€ì€Þ€¹¡¥¥¢¥× ¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥Þ€¬Ÿ¡Œê€Ëfree€·€Æ€Ï€€€±€Þ€»€ó¡¥warning€Ïº£€Î€È€³ €íºÇÂç64¥á¥Ã¥»¡Œ¥ž€ËžÂÄꀵ€ì€Þ€¹¡¥€œ€ì°ÊŸå€Î¥á¥Ã¥»¡Œ¥ž€ÏÀڌ΀ƀé€ì€Þ€¹¡¥
¥á¥Ã¥»¡Œ¥ž€ËŽÞ€Þ€ì€ë²ÄÇœÀ€Î€¢€ëwarning€Ë€Ï°Ê²Œ€Î€â€Î€¬€¢€ê€Þ€¹¡¥
- ¡Š
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€¬¥·¥¹¥Æ¥à€Î€â€Î€âŽÞ€á€Æ€¹€Ù€ÆÍøÍрǀ€Ê€€¡¥
- ¡Š
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€Ë¥·¥ó¥¿¥Ã¥¯¥¹¥š¥é¡Œ€¬€¢€ë¡¥
- ¡Š
- ¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹Œœñ€¬ÍøÍрǀ€Ê€€¡¥
- ¡Š
- €«€ÊŽÁ»úÊÑŽ¹Œœñ€¬ÍøÍрǀ€Ê€€¡¥
- ¡Š
- €«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€ËÀܳ€Ç€€Ê€€¡¥
Â裳°ú¿ô€È€·€ÆNULL€ò»ØÄꀷ€¿Ÿì¹çwarning¥á¥Ã¥»¡Œ¥ž€ÏŒÎ€Æ€é€ì€Þ€¹¡¥
- (2)
- KC_CHANGEMODE - ÆþÎϥ⡌¥É€ÎÊѹ¹
ÆþÎϥ⡌¥É€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó€«€éÊѹ¹€·€Þ€¹¡¥request€Î Éôʬ€Ë€ÏKC_CHANGEMODE€ò»ØÄꀷ¡€arg€ËjrKanjiStatusWithValue¹œÂ€ÂÎ €ò»ØÄꀷ€Æ²Œ€µ€€¡¥jrKanjiStatusWithValue¹œÂ€Â΀Îval¥á¥ó¥Ð€Ë€Æ¥â¡Œ ¥ÉÈÖ¹æ€ò»ØÄꀹ€ë€³€È€Ë€è€êÆüËÜžì¥â¡Œ¥É€¬ÀÚ€êÂØ€ï€ê€Þ€¹¡¥¥â¡Œ¥ÉÈÖ¹æ€Ï°Ê ²Œ€Î¥Þ¥¯¥í€ÇŒš€µ€ì€Þ€¹¡¥-
- ¥Þ¥¯¥íÈÖ¹æ
- ¥â¡Œ¥É
- CANNA_MODE_AlphaMode
- ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¥â¡Œ¥É
- CANNA_MODE_HenkanMode
- ÊÑŽ¹ÆþÎϥ⡌¥É
- CANNA_MODE_KigoMode
- µ¹æÆþÎϥ⡌¥É
- CANNA_MODE_ZenHiraKakuteiMode
- ÁŽ³Ñ€Ò€é€¬€Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_ZenKataKakuteiMode
- ÁŽ³Ñ¥«¥¿¥«¥Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HanKataKakuteiMode
- ÈŸ³Ñ¥«¥¿¥«¥Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_ZenAlphaKakuteiMode
- ÁŽ³Ñ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HanAlphaKakuteiMode
- ÈŸ³Ñ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HexMode
- 16¿Ê¥³¡Œ¥ÉÆþÎϥ⡌¥É
- CANNA_MODE_BushuMode
- ÉôŒóÆþÎϥ⡌¥É
- CANNA_MODE_TorokuMode
- ñžìÅÐÏ¿¥â¡Œ¥É
€³€Îµ¡Çœ€Ë€è€ê¥â¡Œ¥É€òÊѹ¹€¹€ë€È¥â¡Œ¥ÉÌŸ€ò»Ï€á€È€·€Æ¿€¯€ÎÉœŒš€¬ÊѲœ€ò Œõ€±€Þ€¹¡¥ÉœŒš€ÎÊѹ¹€Ïarg€È€·€Æ»ØÄꀷ€¿jrKanjiStatusWithValue¹œÂ€ÂÎ€Ë €ÆÊÖ€µ€ì€Þ€¹¡¥
(Îã)
jrKanjiStatus ks; jrKanjiStatusWithValue ksv; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; ksv.val = CANNA_MODE_HexMode; jrKanjiControl(context, KC_CHANGEMODE, &ksv); len = ksv.val; ..... /* Ì€³ÎÄêÊž»úÎó€ä³ÎÄêÊž»úÎó€ÎŸðÊó€¬ksv€Ë€è€êÊÖ€µ€ì€Þ€¹¡¥ */
- (3)
- KC_SETWIDTH - žõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÉý€ò»ØÄê
žõÊä°ìÍ÷€Î€¿€á€ËÍÑ€€€é€ì€ëÎΰè€Î¥³¥é¥à¿ô€ò»ØÄꀷ€Þ€¹¡¥£±¥³¥é¥à€ÎÉý€Ï¥¢ ¥ë¥Õ¥¡¥Ù¥Ã¥ÈÊž»ú€¢€ë€€€ÏÈŸ³Ñ¥«¥¿¥«¥Ê£±Êž»ú€ÎÊž»úÉý€Ç€¢€ê¡€ÁŽ³ÑŽÁ»ú€Ï£² ¥³¥é¥àÀê€á€ë€³€È€Ë€Ê€ê€Þ€¹¡¥žõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÉý€ò »ØÄꀹ€ë€¿€á€ËrequestÉôʬ€Ë»ØÄꀹ€ëÃÍ€ÏKC_SETWIDTH€Ç¡€ €³€Î€È€arg€Ë¥³¥é¥à¿ô€ò»ØÄꀷ€Þ€¹¡¥
(Îã)-
jrKanjiControl(0, KC_SETWIDTH, (char *)60);
- (4)
- KC_FINALIZE - €«€ÊŽÁ»úÊÑŽ¹€ÎœªÎ»œèÍý¡¥
¥×¥í¥°¥é¥à€òœªÎ»€¹€ë€Ê€É€Î¶ÉÌ̀ǀ«€ÊŽÁ»úÊÑŽ¹€âœªÎ»€¹€ë€³€È€ò»ØÄꀷ€Þ€¹¡¥ €«€ÊŽÁ»úÊÑŽ¹œèÍý€òœªÎ»€µ€»€ë»þ€Ïɬ€º€³€ÎœèÍý€ò¹Ô€Ã€Æ²Œ€µ€€¡¥œª€ï€ë€Ë€¢ €¿€Ã€Æº£€Þ€Ç³Øœ¬€·€¿ÆâÍÆ€¬¥Õ¥¡¥€¥ë€ËÅÐÏ¿€µ€ì€Þ€¹¡¥requestÉôʬ€Ë €ÏKC_FINALIZE€ò»ØÄꀷ€Þ€¹¡¥
ÀµŸïœªÎ»»þ€Ë0¡€°ÛŸïœªÎ»»þ€Ë-1€¬Ìá€êÃ̀Ȁ·€ÆÊÖ€ê€Þ€¹¡¥
KC_FINALIZE€ò¹Ô€Ã€¿Ÿì¹ç¡€¥š¥é¡Œ€È€Þ€Ç€€€«€Ê€¯€È€â²¿€é€«€Îwarning€¬È¯Àž €¹€ë€³€È€¬€¢€ê€Þ€¹¡¥warning€¬È¯Àž€·€¿Ÿì¹ç€Ïarg€Ë€ÆÍ¿€š€é€ì€¿ ÊÑ¿ô€ËwarningÊž»úÎó€ÎÇÛÎó€Ø€Î¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥warning€¬€Ê €€Ÿì¹ç€Ë€ÏNULL¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥
(Îã)-
int res; /* ¥š¥é¡Œ€¬ÊÖ€ëŸì¹ç€ËÈ÷€š€ë */
char **warning;
.....
res = jrKanjiControl(0, KC_FINALIZE, &warning);
if (warning) {
char **p;
for (p = warning ; *p ; p++) {
fprintf(stderr, "%s, *p);
}
}Â裳°ú¿ô€ËÊÖ€µ€ì€ëwarning¥á¥Ã¥»¡Œ¥ž€Ï¡€¥é¥€¥Ö¥é¥ê€ÎÆâÉô€Çmalloc€µ€ì€Þ €¹¡¥€³€ì€Ï¡€Œ¡€ËKC_INITIALIZE€äKC_FINALIZE€¬¹Ô€ï€ì€¿»þ€Ë³«Êü€µ€ì€Þ€¹¡¥ ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥Þ€¬Ÿ¡Œê€Ëfree€·€Æ€Ï€€€±€Þ€»€ó¡¥
warning€Ïº£€Î€È€³€íºÇÂç64¥á¥Ã¥»¡Œ¥ž€ËžÂÄꀵ€ì€Þ€¹¡¥€œ€ì°ÊŸå€Î¥á¥Ã¥»¡Œ ¥ž€ÏÀڌ΀ƀé€ì€Þ€¹¡¥
¥á¥Ã¥»¡Œ¥ž€ËŽÞ€Þ€ì€ë²ÄÇœÀ€Î€¢€ëwarning€Ë€ÏŒ¡€Î€â€Î€¬€¢€ê€Þ€¹¡¥
- ¡Š
- Œœñ€¬¥¢¥ó¥Þ¥Š¥ó¥È€Ç€€Ê€€¡¥
Â裳°ú¿ô€È€·€ÆNULL€ò»ØÄꀷ€¿Ÿì¹ç¡€warning¥á¥Ã¥»¡Œ¥ž€ÏŒÎ€Æ€é€ì€Þ€¹¡¥
- (5)
- KC_SETUNDEFKEYFUNCTION - Ì€ÄêµÁ¥¡Œ€ËÂЀ¹€ëµ¡Çœ€ÎÀßÄê
Æɀ߀òÆþÎÏ€·€Æ€€€ëŸõÂÖ€ÇC-t€òÂǀÀ¿€È€€Î€è€Š€ËÌ€ÄêµÁ¥¡Œ€òÆþÎÏ€·€¿»þ €ËŒè€é€ì€ëœèÍý€ò»ØÄꀷ€Þ€¹¡¥Ì€ÄêµÁ¥¡Œ€ËÂбþ€·€Æ¹Ô€ï€ì€ëœèÍý€È€·€Æ€Ï°Ê ²Œ€ÎœèÍý€¬€¢€ê€Þ€¹¡¥-
- ¥Þ¥¯¥íÌŸ
- œèÍý
- kc_normal
- ¥Ó¡Œ¥×
- kc_through
- ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
- kc_kakutei
- ³ÎÄꀷ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
- kc_kill
- ŸÃµî€·¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
kc_normal€ò»ØÄꀷ€¿Ÿì¹ç¡€³°ÉôÊÑ¿ôjrBeepFunc€ËÀßÄꀵ€ì€¿ŽØ¿ô€¬Ì€ÄêµÁ¥¡Œ ÆþÎÏ»þ€Ë¥é¥€¥Ö¥é¥ê€Ë€è€Ã€ÆŒ«Æ°Åª€ËžÆ€ÓœÐ€µ€ì€Þ€¹¡¥jrBeepFunc€ËÃÍ€òÀßÄê €·€Ê€€Ÿì¹ç€Ë€Ï(jrBeepFunc == NULL€ÎŸì¹ç€Ë€Ï)²¿€âµ¯€³€ê€Þ€»€ó¡¥
(Îã)
extern (*jrBeepFunc)(), beep(); jrBeepFunc = beep; jrKanjiControl(0, KC_SETUNDEFKEYFUNCTION, kc_normal);
- (6)
- KC_SETMODEINFOSTYLE - ¥â¡Œ¥ÉŸðÊó€ÎÉœžœ
¥â¡Œ¥ÉŸðÊó€òÊž»úÎó€Ç€Ï€Ê€¯¥Ó¥Ã¥È¥Þ¥Ã¥×€Ê€É€Î¥Ç¡Œ¥¿€ÇÉœŒš€·€¿€€Ÿì¹ç€¬€¢ €ê€Þ€¹¡¥€œ€Î€è€Š€ÊŸì¹ç€Ë€Ï¥â¡Œ¥ÉŸðÊó€È€·€Æ¿ôÃͥǡŒ¥¿€¬ÊրÀƀ¯€ë€ÈœèÍý €¬€·€ä€¹€¯€Ê€ê€Þ€¹¡¥jrKanjiControl€ÇKC_SETMODEINFOSTYLE€ò »ØÄꀷ¡€arg€Ë£±€òÅÏ€¹€³€È€Ë€è€Ã€Æ€œ€ì°Êžå€ÏjrKanjiStatus¹œÂ€ÂÎ €Îmode¥á¥ó¥Ð€Ë€Ï¥â¡Œ¥É€òÉœ€¹¿ôÃÍ€Ë'@'(0x40)€ò²Ã€š€¿£±Êž»ú€¬ÊÖ€µ €ì€ë€è€Š€Ë€Ê€ê€Þ€¹¡¥¥â¡Œ¥É€òÉœ€¹¿ôÃÍ€ËÊÑŽ¹€¹€ëŸì¹ç€Ë€ÏÊրÀƀ€¿Êž»úÎó €«€é'@'(0x40)€ò°ú€€Þ€¹¡¥¥â¡Œ¥É€òÉœ€¹¿ôÃ̀ˀĀ€€Æ€ÏÆþÎϥ⡌¥É€Î Êѹ¹((2)KC_CHANGEMODE)€Î€³€Š€ò»²ŸÈ€·€Æ²Œ€µ€€¡¥
- (7)
- KC_KAKUTEI¡€(8) KC_KILL - ÆþÎÏÃæ€ÎÊž»úÎó€ÎÊüŽþ
ÆþÎÏÃæ€ÎÊž»úÎó€ò²¿€é€«€ÎÅÔ¹ç€ÇÊüŽþ€·€¿€€Ÿì¹ç€¬€¢€ê€Þ€¹¡¥ÊüŽþ€¹€ëŸì¹ç€Ë ÆþÎÏÃæ€ÎÊž»úÎó€ò³ÎÄêÊž»úÎó€È€·€ÆŒè€ê¹þ€ó€Ç€«€éÊüŽþ€·€¿€€Ÿì¹ç€ÈÁŽ€¯ŒÎ€Æ €Æ€·€Þ€Ã€Æ€«€éÊüŽþ€·€¿€€Ÿì¹ç€¬€¢€ê€Þ€¹¡¥³ÎÄꀹ€ë Ÿì¹ç€Ë€ÏjrKanjiControl€Ë€ÆKC_KAKUTEI€ò»ØÄꀷ¡€ÊüŽþ€¹€ë Ÿì¹ç€Ë€ÏKC_KILL€ò»ØÄꀷ€Þ€¹¡¥
€³€ÎœèÍý€ÏÉœŒš€Ë±Æ¶Á€òÍ¿€š€ë€Î€ÇÂ裳°ú¿ô€Ë€ÏjrKanjiStatusWithValue¹œÂ€ Â΀ò»ØÄꀷ€Ê€±€ì€Ð€Ê€ê€Þ€»€ó¡¥
(Îã)-
jrKanjiStatusWithValue ksv; jrKanjiStatus ks; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; jrKanjiControl(context, KC_KAKUTEI, &ksv); len = ksv.val; .....
- (9)
- KC_QUERYMODE - ¥â¡Œ¥É€ÎÌ䀀¹ç€ï€»
žœºß€Î¥â¡Œ¥É€òÌ䀀¹ç€ï€»€ë€Ë€ÏjrKanjiControl€ÇKC_QUERYMODE€ò»ØÄꀷ€Þ€¹¡¥
Â裳°ú¿ô€Ë€Ï¥â¡Œ¥ÉÊž»úÎó€ò³ÊÇŒ€¹€ë€¿€á€ÎÊž»úÇÛÎó€Î¥Ý¥€¥ó¥¿€ò»ØÄꀷ€Þ€¹¡¥ ¥â¡Œ¥ÉÊž»úÎó€Ï¥Ì¥ëÊž»ú€Çœª€ï€ëÊž»úÎó€Ç€¹¡¥€³€³€Ë¿ôÃÍ€¬ÊÖ€ë€è€Š€Ë€¹€ë€Ë €ÏjrKanjiControl€ÇKC_SETMODEINFOSTYLE€ò»ØÄꀷ€Æ¥â¡Œ¥ÉÊž»úÎó€Î¥¹¥¿¥€¥ë €òÊѹ¹€·€Æ€ª€€Þ€¹¡¥
(Îã)-
char currentMode[MAXMODELEN]; ..... jrKanjiControl(0, KC_QUERYMODE, currentMode); .....
- (10)
- KC_SETSERVERNAME - ¥µ¡Œ¥Ð€Î»ØÄê
€«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€È€·€Æ€É€Î¥µ¡Œ¥Ð€ò»È€Š€«€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à €òœªÎ»€¹€ë€³€È€Ê€·€ËÀÚÂØ€š€ë€³€È€¬²ÄÇœ€Ç€¹¡¥€«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€È€·€ÆÀÜ Â³€¹€ë€Ù€¥µ¡Œ¥Ð€ò»ØÄꀹ€ë€Ë€ÏjrKanjiControl€ÇKC_SETSERVERNAME€ò»ØÄꀷ €Þ€¹¡¥Â裳°ú¿ô€Ë€ÏÀܳ€·€¿€€¥µ¡Œ¥ÐÌŸ€ò»ØÄꀷ€Þ€¹¡¥
- (11)
- KC_SETINITFILENAME - ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€Î»ØÄê
¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥àŠ€«€éÊѹ¹€¹€ë€³€È€¬€Ç €€Þ€¹¡¥¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ÎÊѹ¹€ÏjrKanjiControl€Î Â裲°ú¿ô€ËKC_SETINITFILENAME€ò»ØÄꀷ¡€Â裳°ú¿ô€Ë¥Õ¥¡¥€¥ëÌŸÊž»úÎó€ò»ØÄê €¹€ë€³€È€Ë€è€ê¹Ô€€€Þ€¹¡¥€³€ÎœèÍý€ò¹Ô€ŠŸì¹ç€ÏKC_INITIALIZE€ËÀèΩ€Ã€ÆŒÂ ¹Ô€·€Æ€ª€«€Ê€±€ì€Ð€Ê€ê€Þ€»€ó¡¥
(Îã)-
char *inifile = "app-own.canna" ..... jrKanjiControl(0, KC_SETINITFILENAME, initfile); .....
- (12)
- KC_CLOSEUICONTEXT - ¥³¥ó¥Æ¥¯¥¹¥È€Î¥¯¥í¡Œ¥º
ÊÑŽ¹¥³¥ó¥Æ¥¯¥¹¥È€òÉœ€¹¥³¥ó¥Æ¥¯¥¹¥ÈID€ÏÇ€°Õ€ÎÀ°¿ô€ò³ä€êÅö€Æ€ë€³€È€¬€Ç€ €Þ€¹¡¥º£€Þ€Ç»È€ï€ì€Æ€€€Ê€€ ¥³¥ó¥Æ¥¯¥¹¥ÈID€òjrKanjiString€¢€ë€€€ÏjrKanjiControl€ËÍ¿€š€ë€³€È€¬²ÄÇœ €Ç€¢€ê¡€€œ€ÎŸì¹ç¡€€œ€Î¥³¥ó¥Æ¥¯¥¹¥ÈÍрΥ€¥Ë¥·¥ã¥é¥€¥º€¬¹Ô€ï€ìɬÍ×€Ê¥á ¥â¥ê€¬³ÎÊÝ€µ€ì€Þ€¹¡¥
€œ€ì€Þ€Ç»ÈÍÑ€·€Æ€€€¿ÆþÎϥݡŒ¥È€¬»È€ï€ì€Ê€¯€Ê€Ã€¿Ÿì¹ç€Ë¡€€œ€Î¥Ý¡Œ¥È€Ë³ä €êÅö€Æ€Æ»È€Ã€Æ€€€¿¥³¥ó¥Æ¥¯¥¹¥ÈIDÍр˳ÎÊÝ€µ€ì€¿¥á¥â¥ê€ò ³«Êü€¹€ë€Ë€ÏjrKanjiControl€òÂ裲°ú¿ô€ËKC_CLOSEUICONTEXT€ò»ØÄꀷ€ÆžÆ€Ó œÐ€·€Þ€¹¡¥
€³€ÎœèÍý€ÏÉœŒš€ÎÊѲœ€ò€È€â€Ê€Š€Î€ÇÂ裳°ú¿ô€Ë€ÏjrKanjiStatusWithValue¹œ €Â΀òÍ¿€š€Þ€¹¡¥
(Îã)-
jrKanjiStatusWithValue ksv; jrKanjiStatus ks; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; jrKanjiControl(0, KC_CLOSEUICONTEXT, &ksv); .....
- (13)
- KC_QUERYMAXMODESTR - ¥â¡Œ¥ÉÉœŒšÊž»úÎó€ÎºÇÂçĹ€òµá€á€ë¡¥
œéŽü²œ¥Õ¥¡¥€¥ë€Ë€Æ¥â¡Œ¥ÉÉœŒšÊž»úÎ󀬥«¥¹¥¿¥Þ¥€¥º€Ç€€Þ€¹€¬¡€¥«¥¹¥¿¥Þ¥€ ¥º€µ€ì€¿·ë²Ì¥â¡Œ¥ÉÉœŒšÊž»úÎó€Ë€É€ì€À€±€ÎÉœŒšÎΰè€ò³ÎÊÝ€¹€ë€«€òÄŽ€Ù€ëɬ Í×€¬€¢€ëŸì¹ç€¬€¢€ê€Þ€¹¡¥jrKanjiControl€òÂ裲°ú¿ô€ËKC_QUERYMAXMODESTR€ò »ØÄꀷ€ÆžÆ€ÓœÐ€¹€³€È€Ë€è€ê¡€¥â¡Œ¥ÉÉœŒšÊž»úÎó€È€·€Æ²¿¥³¥é¥àɬÍ×€«€¬ÊÖ€ê Ã̀Ȁ·€ÆÊÖ€µ€ì€Þ€¹¡¥€³€³€ÇžÀ€Š¥³¥é¥à€È€ÏÈŸ³Ñ±Ñ¿ôÊž»ú€ÎÊž»úÉý€ò£±€È€·€¿ €È€€ÎÃÍ€òŒš€·€Þ€¹¡¥
Â裳°ú¿ô€ÏÍÑ€€€é€ì€Ê€€€Î€Ç¥À¥ß¡ŒÃ̀Ȁ·€Æ0€òÍ¿€š€Þ€¹¡¥
(Îã)-
int max_mode_columns; ..... max_mode_columns = jrKanjiControl(0, KC_QUERYMAXMODESTR, 0); .....
ÌŸŸÎ
XLookupKanjiString - ¥¡Œ¥Ü¡Œ¥ÉÆþÎπΎÁ»úÊž»úÎó€Ø€ÎÊÑŽ¹µœÒ·ÁŒ°
#include <X11/Xlib.h> #include <X11/kanji.h> int XLookupKanjiString(event_struct, buffer_return, bytes_buffer, keysym_return, status_return, kanji_status_return) XKeyEvent *event_struct; char *buffer_return; int bytes_buffer; KeySym *keysym_return; XComposeStatus *status_return; XKanjiStatus *kanji_status_return;
°ú¿ô
-
- event_struct
- ¥¡Œ¥€¥Ù¥ó¥È€ò»ØÄꀷ€Þ€¹¡£
- buffer_return
- ÊÑŽ¹€·€¿ŽÁ»úÊž»úÎó€¬ÊÖ€µ€ì€Þ€¹¡£
- bytes_buffer
- ¥Ð¥Ã¥Õ¥¡€ÎĹ€µ€ò»ØÄꀷ€Þ€¹¡£
- keysym_return
- ¥¡Œ¥·¥ó¥Ü¥ë€òÊÖ€·€Þ€¹¡£NULL€ò»ØÄꀹ€ë€³€È€â€Ç€€Þ€¹¡£
- status_return
- XCompose¹œÂ€Â΀؀Υݥ€¥ó¥¿€ò»ØÄꀷ€Þ€¹¡£
- kanji_status_return
- €«€ÊŽÁ»úÊÑŽ¹€ÎÍͻҀ¬ÊÖ€µ€ì€Þ€¹¡£
ÀâÌÀ
XLookupKanjiString€Ï¡¢¥¡Œ¥€¥Ù¥ó¥È€òÆüËÜžìÊž»úÎó€Ë Âбþ€µ€»€ëŽÊ°×¥ë¡Œ¥Á¥ó€Ç¡¢ ¥¡Œ¥€¥Ù¥ó¥È€Îœ€Ÿþ¥¡Œ¥Ó¥Ã¥È€ò»ÈÍÑ€·€Æ¥·¥Õ¥È¡¢¥í¥Ã¥¯¡¢ ¥³¥ó¥È¥í¡Œ¥ëÅù€ÎœèÍý€ò¹Ô€€€Þ€¹¡£
XLookupKanjiString€Ë€è€Ã€Æ8bit¥¢¥ë¥Õ¥¡¥Ù¥Ã¥ÈÊž»ú µÚ€Ó16bitÆüËÜžìÊž»ú€òŒè€ê°·€Š€³€È€¬€Ç€€Þ€¹¡£
¥¢¥ë¥Õ¥¡¥Ù¥Ã¥ÈÊž»ú€ÎŒè€ê°·€€€Ë€Ä€€€Æ€Ï¡¢ XLookupKanjiString€ÏXLookupString€ÈƱÍÍ€ÎÆ°ºî€Ë€Ê€ê€Þ€¹¡£
ÆüËÜžìÊž»ú€ÎŒè€ê°·€€€Ë€Ä€€€Æ€Ï¡¢ €³€ÎŽØ¿ô€ÎÆâÉô€Ë€ª€€€Æ¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹¡¢ €«€ÊŽÁ»úÊÑŽ¹€¬¹Ô€ï€ì€Þ€¹¡£ ÆüËÜžì€ÎÆþÎÏ»þ€ËXKanjiStatus¹œÂ€Â΀¬ÍÑ€€€é€ì€Þ€¹¡£XKanjiStatus¹œÂ€ÂÎ€Ï °Ê²Œ€Î€è€Š€ËÄêµÁ€µ€ì€Þ€¹¡£
typedef struct _XKanjiStatus { unsigned char *echoStr; /* local echo string */ int length; /* length of echo string */ int revPos; /* reverse position */ int revLen; /* reverse length */ unsigned long info; /* other informations */ unsigned char *mode; /* mode information */ struct { unsigned char *line; /* a grance of Kanji characters */ int length; /* length of it */ int revPos; /* reverse position of it */ int revLen; /* reverse length of it */ } gline; /* a grancing line information */ } XKanjiStatus; #define KanjiModeInfo 01 #define KanjiGLineInfo 02
€«€ÊŽÁ»úÊÑŽ¹€òÍÑ€€€¿ÆüËÜžìÆþÎÏ»þ€Ë€ÏÊÑŽ¹€ÎÂП݀ȀʀëÆɀ߀ʀɀò ¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€ëɬÍ×€¬€¢€ê€Þ€¹¡£XLookupKanjiString€Ï¥í¡Œ¥«¥ë ¥š¥³¡Œ€Ê€ÉÉœŒš€ËŽØ€¹€ë€³€È€Ï²¿€â¹Ô€ï€º¡¢Âå€ï€ê€Ë¥í¡Œ¥«¥ë¥š¥³¡Œ €¹€ë€Ù€Êž»úÎó€òXKanjiStatus¹œÂ€Â΀òÍÑ€€€Æ ¥¢¥×¥ê¥±¡Œ¥·¥ç¥óŠ€ËÊÖ€·€Þ€¹¡£
ÊÑŽ¹€¬³ÎÄꀹ€ë€Þ€Ç€Ï¡¢¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹€µ€ì€Æ€€€ëÊž»ú€ä¡¢ ÊÑŽ¹žõÊäÊž»ú€Ê€É¡¢¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€(EUC) Êž»úÎó€¬echoStr¥á¥ó¥Ð€Ë €è€êÊÖ€µ€ì€Þ€¹¡£€³€Î€È€¡¢¥í¡Œ¥«¥ë¥š¥³¡ŒÊž»úÎó€Î Ĺ€µ¡¢¥ê¥Ð¡Œ¥¹ÉœŒš€Î³«»Ï°ÌÃÖ€ÈĹ€µ¡Ê¥Ð¥€¥Èñ°Ì¡Ë€¬¡¢ €œ€ì€Ÿ€ì¡¢length¥á¥ó¥Ð¡¢revPos¡¢revLen¥á¥ó¥Ð€Ë€Æ ÊÖ€µ€ì€Þ€¹¡£ ¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€Êž»úÎó€Î€¿€á€Î¥Ð¥Ã¥Õ¥¡€ÏXLookupKanjiString€Ë €è€Ã€ÆŒ«Æ°Åª€Ë³ÎÊÝ€µ€ì€Þ€¹€¬¡¢€œ€ÎÎΰè€ÏÆɀߌè€ê€Î€ß€ËÍÑ€€€é€ì€ë€Ù€€Ç€¢€ê¡¢ €œ€ÎÎΰè€ËÊž»úÎó€òœñ€¹þ€ó€Ç€Ï€€€±€Þ€»€ó¡£
¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€Êž»úÎó€¬Ìµ€€Ÿì¹ç€Ïlength¥á¥ó¥Ð€Ë£°€¬ÊÖ€ê€Þ€¹¡£
¥í¡Œ¥«¥ë¥š¥³¡Œ€¹€Ù€ÆâÍÆ€¬Á°²ó€ÎXLookupKanjiString€ÎžÆ€ÓœÐ€·€Î€È€€È ÊÑ€ï€é€Ê€€Ÿì¹ç¡ÊÎ〚€Ð¥·¥Õ¥È¥¡Œ€¬²¡€µ€ì€¿Ÿì¹ç€Ê€É¡Ë€Ïlength¥á¥ó¥Ð€Ë ¡Ý£±€¬ÊÖ€ê€Þ€¹¡£
¥â¡Œ¥É€ÎÊѹ¹€ä¡¢žõÊä°ìÍ÷€ËŽØ€¹€ëŸðÊó€ÎÍ̵€Ï¡¢info¥á¥ó¥Ð€Ë€è€Ã€ÆÅÏ€µ€ì €Þ€¹¡£info¥á¥ó¥Ð€ÎKanjiModeInfo¥Ó¥Ã¥È€¬on€Ç€¢€ì€Ð¡¢mode€Ë¿·€·€€¥â¡Œ¥É €òŒš€¹Êž»úÎó€¬ÊÖ€µ€ì€Þ€¹¡£info¥á¥ó¥Ð€ÎKanjiGLineInfo¥Ó¥Ã¥È€¬on€Ç€¢€ì€Ð¡¢ gline¹œÂ€Â΀˞õÊä°ìÍ÷Åù€ÎŸðÊ󀬳ÊÇŒ€µ€ì€Æ€€€Þ€¹¡£
gline¹œÂ€Â΀Îline¥á¥ó¥Ð€Ë€ÏžõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÊž»úÎó€¬ÊÖ€µ€ì€Þ€¹¡£ gline¹œÂ€Â΀Îline,revPos,revLen€Î³Æ¥á¥ó¥Ð€Ï¡¢žõÊä°ìÍ÷Êž»úÎó€Î€œ€ì€Ÿ€ì¡¢ Ĺ€µ¡¢¥ê¥Ð¡Œ¥¹ÉœŒš€Î³«»Ï°ÌÃÖ¡¢¥ê¥Ð¡Œ¥¹ÉœŒš€ÎĹ€µ€¬ÊÖ€µ€ì€Þ€¹¡£
ÊÑŽ¹Ãæ€Ë³ÎÄꀷ€¿(EUC)Êž»úÎ󀬀¢€ëŸì¹ç€Ï¡¢ €œ€ÎÊž»úÎó€¬buffer_return€Ë³ÊÇŒ€µ€ì¡¢ €œ€ÎÊž»úÎó€ÎĹ€µ¡Ê¥Ð¥€¥Èñ°Ì¡Ë€¬€³€ÎŽØ¿ô€ÎÌá€êÃ̀Ȁ·€ÆÊÖ€µ€ì€Þ€¹¡£ ³ÎÄꀷ€¿Êž»úÎó€¬Ìµ€€Ÿì¹ç€ÏÌá€êÃ̀ϣ°€Ë€Ê€ê€Þ€¹¡£
ÌŸÁ°
XKanjiControl - XLookupKanjiString€Ç€Î¥â¡Œ¥É€ä¡€œèÍý€ÎÀ©žæ€ò¹Ô€Š·ÁŒ°
#include <X11/kanji.h> int XKanjiControl(dpy, win, request, arg) Display dpy; Window win; int request; char *arg;
ÀâÌÀ
XKanjiControl€Ïdpy, win€ÇŒš€µ€ì€ë¥Š¥£¥ó¥É¥Š€Ë€ª€±€ëÆüËÜžìÆþÎÏ€Ë ŽØ€·€Æ¡€request€ÇŒš€µ€ì€ëœèÍý€ò¹Ô€€€Þ€¹¡¥œèÍý€Ë€è€Ã€Æ€Ï¡€°ú¿ô€ò ÈŒ€ŠŸì¹ç€¬€¢€ê¡€€œ€ÎŸì¹ç¡€°ú¿ô€Ïarg€Ë€ÆÍ¿€š€Þ€¹¡¥
XKanjiControl€ÇÀ©žæ€µ€ì€ëµ¡Çœ€È€·€Æ€Ï°Ê²Œ€¬€¢€ê€Þ€¹¡¥
- requestÌŸ
- µ¡Çœ
- KC_INITIALIZE
- €«€ÊŽÁ»úÊÑŽ¹€òœéŽü²œ€¹€ë¡¥
- KC_CHANGEMODE
- ÆþÎϥ⡌¥É€òÊѹ¹€¹€ë¡¥
- KC_SETWIDTH
- žõÊä°ìÍ÷ÉœŒš€Î»þ€ÎÉý€ò»ØÄꀹ€ë¡¥
- KC_FINALIZE
- €«€ÊŽÁ»úÊÑŽ¹€ÎœªÎ»œèÍý¡¥
- KC_SETUNDEFKEYFUNCTION
- Ì€ÄêµÁ¥¡Œ€ËÂЀ¹€ëµ¡Çœ€ÎÀßÄê€ò¹Ô€Š¡¥
- KC_SETMODEINFOSTYLE
- ¥â¡Œ¥ÉŸðÊó€ò¿ôÃÍ€ÇÉœžœ€¹€ë€«€É€Š€«€ò»ØÄꀹ€ë¡¥
- KC_KAKUTEI
- ÆþÎÏÃæ€ÎÊž»úÎó€ò³ÎÄꀹ€ë¡¥
- KC_KILL
- ÆþÎÏÃæ€ÎÊž»úÎó€òºïœü€¹€ë¡¥
- KC_QUERYMODE
- žœºß€Î¥â¡Œ¥É€òÌ䀀¹ç€ï€»€ë¡¥
- KC_SETSERVERNAME
- Àܳ€¹€ë¥µ¡Œ¥Ð€ò»ØÄꀹ€ë¡¥
- KC_SETINITFILENAME
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ò»ØÄꀹ€ë¡¥
- KC_CLOSEUICONTEXT
- ¥³¥ó¥Æ¥¯¥¹¥È€ò¥¯¥í¡Œ¥º€¹€ë¡¥
- KC_QUERYMAXMODESTR
- ¥â¡Œ¥ÉÉœŒšÊž»úÎó€ÎºÇÂçĹ€òµá€á€ë¡¥
XKanjiControl€ÎºîÍрώðËÜŪ€Ë€Ïdpy, win€Ç»ØÄꀵ€ì€¿¥Š¥£¥ó¥É¥Š€Ç €ÎÆüËÜžìÆþÎÏ€ËÂЀ·€Æ€Î €ßºîÍÑ€·€Þ€¹¡¥€¿€À€·¡€œéŽü²œ€ÎœèÍý€äœªÎ»€ÎœèÍý€ËŽØ€·€Æ€Ï€œ€ÎžÂ€ê€Ç€Ï€¢ €ê€Þ€»€ó¡¥
XKanjiControl€ÎÁàºî€Ë€è€Ã€ÆÌ€³ÎÄêÊž»úÎó€ÎŸõÂÖ€¬ÊѲœ€·€¿€ê¡€¥â¡Œ¥É€ÎŸõ ÂÖ€¬ÊÑ€ï€ë€³€È€¬€¢€ê€Þ€¹¡¥€œ€Î€è€Š€Ê²ÄÇœÀ€¬€¢€ëŸì¹ç€ÏargÉôʬ€ËÊѲœ€· €¿ŸðÊó€ò³ÊÇŒ€Ç€€ë€è€Š€Ê¹œÂ€Â΀؀Υݥ€¥ó¥¿€òÅÏ€·€Þ€¹¡¥€œ€Î¹œÂ€Â΀ÎÄêµÁ €Ï°Ê²Œ€Î€è€Š€Ë€Ê€ê€Þ€¹¡¥
typedef struct { int val; /* ¥Ð¥Ã¥Õ¥¡€Ë³ÊÇŒ€µ€ì€¿Êž»úÎó€ÎĹ€µ€¬ÊÖ€ë */ unsigned char *buffer; /* ³ÎÄêÊž»úÎó€ò³ÊÇŒ€¹€ë€¿€á€Î¥Ð¥Ã¥Õ¥¡€òÍ¿€š€ë */ int bytes_buffer; /* Ÿåµ€Î¥Ð¥Ã¥Õ¥¡€ÎÂ瀀µ€òÍ¿€š€ë */ XKanjiStatus *ks; /* Ì€³ÎÄêÊž»úÎó€ÎŸðÊó€ò³ÊÇŒ€¹€ë¹œÂ€Â΀؀Υݥ€¥ó¥¿ */ } XKanjiStatusWithValue;
XKanjiControl€Î€œ€ì€Ÿ€ì€Îµ¡Çœ€ÎŒÂ¹Ô€Î€·€«€¿€Ï°Ê²Œ€ÎÄÌ€ê€Ç€¹¡¥
- (1)
- KC_INITIALIZE - €«€ÊŽÁ»úÊÑŽ¹€ÎœéŽü²œ
KC_INITIALIZE€òrequestÉô€Ç»ØÄꀹ€ë€³€È€Ë€è€ê¡€€«€ÊŽÁ»úÊÑŽ¹€ÎœéŽü ²œ€ò¹Ô€€€Þ€¹¡¥arg€Ë€Ïwarning¥á¥Ã¥»¡Œ¥ž€ò ³ÊÇŒ€¹€ë€¿€á€Î(char **)·¿€ÎÊÑ¿ô€Ø€Î¥Ý¥€¥ó¥¿€Þ€¿€ÏNULL€ò»ØÄꀷ€Þ€¹¡¥œé Žü²œ€ÎœèÍý€ÏŽðËÜŪ€Ë€ÏXKanjiString(3)€¬ºÇœé€ËžÆ€Ð€ì€¿»þ€ËŒ«Æ°Åª€Ë¹Ô€ï €ì€Þ€¹€¬¡€XKanjiControl€òÍÑ€€€ÆœéŽü²œ€¹€ë €³€È€Ë€è€ê¡€XKanjiString(3)€Ç€ÎœéŽü²œœèÍý€Ï¹Ô€ï€ì€Ê€¯€Ê€ê€Þ€¹¡¥
XKanjiString(3)€Î»ÈÍÑ€ËÀèΩ€Ã€ÆXKanjiControl€òÍÑ€€€Æ€«€ÊŽÁ»úÊÑŽ¹€ËŽØ €¹€ëÀ©žæ€ò¹Ô€Š»þ€Ê€É€Ï¡€ŽÁ»úÊÑŽ¹€ÎœéŽü²œ€ò¹Ô€ŠÉ¬Í×€¬€¢€ê€Þ€¹¡¥
ÀµŸïœªÎ»»þ€Ë€ÏXKanjiControl€ÎÌá€êÃ̀Ȁ·€Æ0€¬Êրꡀ°ÛŸïœªÎ»»þ€Ë€Ï-1€¬ ÊÖ€ê€Þ€¹¡¥
KC_INITIALIZE€ò¹Ô€Ã€¿Ÿì¹ç¡€¥š¥é¡Œ€È€Þ€Ç€Ï€€€«€Ê€¯€È€â²¿€é€«€Îwarning€¬ ȯÀž€¹€ë€³€È€¬€¢€ê€Þ€¹¡¥warning€¬È¯Àž€·€¿Ÿì¹ç€Ïarg€Ë€ÆÍ¿€š€é€ì€¿ ÊÑ¿ô€ËÂЀ·€ÆwarningÊž»úÎó€ÎÇÛÎó€Ø€Î¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ì ÊÖ€µ€ì€Þ€¹¡¥warning€¬€Ê€€€È€€ÏNULL€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥
(Îã)-
int res; /* ¥š¥é¡Œ€¬ÊրÀƀ¯€ëŸì¹ç€ËÈ÷€š€ë */ char **warning; ..... res = XKanjiControl(dpy, win, KC_INITIALIZE, &warning); if (warning) { char **p; for (p = warning ; *p ; p++) { fprintf(stderr, "%s, *p); } }
Âè4°ú¿ô€ËÊÖ€µ€ì€ëwarning¥á¥Ã¥»¡Œ¥ž€Ï¥é¥€¥Ö¥é¥ê€ÎÆâÉô€Çmalloc€µ€ì€Þ€¹¡¥ €³€ì€Ï¡€Œ¡€ËKC_INITIALIZE€äKC_FINALIZE€¬¹Ô€ï€ì€¿»þ€Ë³«Êü€µ€ì€Þ€¹¡¥¥¢¥× ¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥Þ€¬Ÿ¡Œê€Ëfree€·€Æ€Ï€€€±€Þ€»€ó¡¥warning€Ïº£€Î€È€³ €íºÇÂç64¥á¥Ã¥»¡Œ¥ž€ËžÂÄꀵ€ì€Þ€¹¡¥€œ€ì°ÊŸå€Î¥á¥Ã¥»¡Œ¥ž€ÏÀڌ΀ƀé€ì€Þ€¹¡¥
¥á¥Ã¥»¡Œ¥ž€ËŽÞ€Þ€ì€ë²ÄÇœÀ€Î€¢€ëwarning€Ë€Ï°Ê²Œ€Î€â€Î€¬€¢€ê€Þ€¹¡¥
- ¡Š
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€¬¥·¥¹¥Æ¥à€Î€â€Î€âŽÞ€á€Æ€¹€Ù€ÆÍøÍрǀ€Ê€€¡¥
- ¡Š
- ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€Ë¥·¥ó¥¿¥Ã¥¯¥¹¥š¥é¡Œ€¬€¢€ë¡¥
- ¡Š
- ¥í¡Œ¥Þ»ú€«€ÊÊÑŽ¹Œœñ€¬ÍøÍрǀ€Ê€€¡¥
- ¡Š
- €«€ÊŽÁ»úÊÑŽ¹Œœñ€¬ÍøÍрǀ€Ê€€¡¥
- ¡Š
- €«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€ËÀܳ€Ç€€Ê€€¡¥
Âè4°ú¿ô€È€·€ÆNULL€ò»ØÄꀷ€¿Ÿì¹çwarning¥á¥Ã¥»¡Œ¥ž€ÏŒÎ€Æ€é€ì€Þ€¹¡¥
- (2)
- KC_CHANGEMODE - ÆþÎϥ⡌¥É€ÎÊѹ¹
ÆþÎϥ⡌¥É€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó€«€éÊѹ¹€·€Þ€¹¡¥request€Î Éôʬ€Ë€ÏKC_CHANGEMODE€ò»ØÄꀷ¡€arg€ËXKanjiStatusWithValue¹œÂ€ÂÎ €ò»ØÄꀷ€Æ²Œ€µ€€¡¥XKanjiStatusWithValue¹œÂ€Â΀Îval¥á¥ó¥Ð€Ë€Æ¥â¡Œ ¥ÉÈÖ¹æ€ò»ØÄꀹ€ë€³€È€Ë€è€êÆüËÜžì¥â¡Œ¥É€¬ÀÚ€êÂØ€ï€ê€Þ€¹¡¥¥â¡Œ¥ÉÈÖ¹æ€Ï°Ê ²Œ€Î¥Þ¥¯¥í€ÇŒš€µ€ì€Þ€¹¡¥-
- ¥Þ¥¯¥íÈÖ¹æ
- ¥â¡Œ¥É
- CANNA_MODE_AlphaMode
- ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¥â¡Œ¥É
- CANNA_MODE_HenkanMode
- ÊÑŽ¹ÆþÎϥ⡌¥É
- CANNA_MODE_KigoMode
- µ¹æÆþÎϥ⡌¥É
- CANNA_MODE_ZenHiraKakuteiMode
- ÁŽ³Ñ€Ò€é€¬€Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_ZenKataKakuteiMode
- ÁŽ³Ñ¥«¥¿¥«¥Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HanKataKakuteiMode
- ÈŸ³Ñ¥«¥¿¥«¥Ê³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_ZenAlphaKakuteiMode
- ÁŽ³Ñ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HanAlphaKakuteiMode
- ÈŸ³Ñ¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È³ÎÄêÆþÎϥ⡌¥É
- CANNA_MODE_HexMode
- 16¿Ê¥³¡Œ¥ÉÆþÎϥ⡌¥É
- CANNA_MODE_BushuMode
- ÉôŒóÆþÎϥ⡌¥É
- CANNA_MODE_TorokuMode
- ñžìÅÐÏ¿¥â¡Œ¥É
€³€Îµ¡Çœ€Ë€è€ê¥â¡Œ¥É€òÊѹ¹€¹€ë€È¥â¡Œ¥ÉÌŸ€ò»Ï€á€È€·€Æ¿€¯€ÎÉœŒš€¬ÊѲœ€ò Œõ€±€Þ€¹¡¥ÉœŒš€ÎÊѹ¹€Ïarg€È€·€Æ»ØÄꀷ€¿XKanjiStatusWithValue¹œÂ€ÂÎ€Ë €ÆÊÖ€µ€ì€Þ€¹¡¥
(Îã)
XKanjiStatus ks; XKanjiStatusWithValue ksv; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; ksv.val = CANNA_MODE_HexMode; XKanjiControl(dpy, win, KC_CHANGEMODE, &ksv); len = ksv.val; ..... /* Ì€³ÎÄêÊž»úÎó€ä³ÎÄêÊž»úÎó€ÎŸðÊó€¬ksv€Ë€è€êÊÖ€µ€ì€Þ€¹¡¥ */
- (3)
- KC_SETWIDTH - žõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÉý€ò»ØÄê
žõÊä°ìÍ÷€Î€¿€á€ËÍÑ€€€é€ì€ëÎΰè€Î¥³¥é¥à¿ô€ò»ØÄꀷ€Þ€¹¡¥£±¥³¥é¥à€ÎÉý€Ï¥¢ ¥ë¥Õ¥¡¥Ù¥Ã¥ÈÊž»ú€¢€ë€€€ÏÈŸ³Ñ¥«¥¿¥«¥Ê£±Êž»ú€ÎÊž»úÉý€Ç€¢€ê¡€ÁŽ³ÑŽÁ»ú€Ï£² ¥³¥é¥àÀê€á€ë€³€È€Ë€Ê€ê€Þ€¹¡¥žõÊä°ìÍ÷ÉœŒš€Î€¿€á€ÎÉý€ò »ØÄꀹ€ë€¿€á€ËrequestÉôʬ€Ë»ØÄꀹ€ëÃÍ€ÏKC_SETWIDTH€Ç¡€ €³€Î€È€arg€Ë¥³¥é¥à¿ô€ò»ØÄꀷ€Þ€¹¡¥
(Îã)-
XKanjiControl(dpy, win, KC_SETWIDTH, (char *)60);
- (4)
- KC_FINALIZE - €«€ÊŽÁ»úÊÑŽ¹€ÎœªÎ»œèÍý¡¥
¥×¥í¥°¥é¥à€òœªÎ»€¹€ë€Ê€É€Î¶ÉÌ̀ǀ«€ÊŽÁ»úÊÑŽ¹€âœªÎ»€¹€ë€³€È€ò»ØÄꀷ€Þ€¹¡¥ €«€ÊŽÁ»úÊÑŽ¹œèÍý€òœªÎ»€µ€»€ë»þ€Ïɬ€º€³€ÎœèÍý€ò¹Ô€Ã€Æ²Œ€µ€€¡¥œª€ï€ë€Ë€¢ €¿€Ã€Æº£€Þ€Ç³Øœ¬€·€¿ÆâÍÆ€¬¥Õ¥¡¥€¥ë€ËÅÐÏ¿€µ€ì€Þ€¹¡¥requestÉôʬ€Ë €ÏKC_FINALIZE€ò»ØÄꀷ€Þ€¹¡¥
ÀµŸïœªÎ»»þ€Ë0¡€°ÛŸïœªÎ»»þ€Ë-1€¬Ìá€êÃ̀Ȁ·€ÆÊÖ€ê€Þ€¹¡¥
KC_FINALIZE€ò¹Ô€Ã€¿Ÿì¹ç¡€¥š¥é¡Œ€È€Þ€Ç€€€«€Ê€¯€È€â²¿€é€«€Îwarning€¬È¯Àž €¹€ë€³€È€¬€¢€ê€Þ€¹¡¥warning€¬È¯Àž€·€¿Ÿì¹ç€Ïarg€Ë€ÆÍ¿€š€é€ì€¿ ÊÑ¿ô€ËwarningÊž»úÎó€ÎÇÛÎó€Ø€Î¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥warning€¬€Ê €€Ÿì¹ç€Ë€ÏNULL¥Ý¥€¥ó¥¿€¬³ÊÇŒ€µ€ìÊÖ€µ€ì€Þ€¹¡¥
(Îã)-
int res; /* ¥š¥é¡Œ€¬ÊÖ€ëŸì¹ç€ËÈ÷€š€ë */
char **warning;
.....
res = XKanjiControl(dpy, win, KC_FINALIZE, &warning);
if (warning) {
char **p;
for (p = warning ; *p ; p++) {
fprintf(stderr, "%s, *p);
}
}Âè4°ú¿ô€ËÊÖ€µ€ì€ëwarning¥á¥Ã¥»¡Œ¥ž€Ï¡€¥é¥€¥Ö¥é¥ê€ÎÆâÉô€Çmalloc€µ€ì€Þ €¹¡¥€³€ì€Ï¡€Œ¡€ËKC_INITIALIZE€äKC_FINALIZE€¬¹Ô€ï€ì€¿»þ€Ë³«Êü€µ€ì€Þ€¹¡¥ ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥Þ€¬Ÿ¡Œê€Ëfree€·€Æ€Ï€€€±€Þ€»€ó¡¥
warning€Ïº£€Î€È€³€íºÇÂç64¥á¥Ã¥»¡Œ¥ž€ËžÂÄꀵ€ì€Þ€¹¡¥€œ€ì°ÊŸå€Î¥á¥Ã¥»¡Œ ¥ž€ÏÀڌ΀ƀé€ì€Þ€¹¡¥
¥á¥Ã¥»¡Œ¥ž€ËŽÞ€Þ€ì€ë²ÄÇœÀ€Î€¢€ëwarning€Ë€ÏŒ¡€Î€â€Î€¬€¢€ê€Þ€¹¡¥
- ¡Š
- Œœñ€¬¥¢¥ó¥Þ¥Š¥ó¥È€Ç€€Ê€€¡¥
Âè4°ú¿ô€È€·€ÆNULL€ò»ØÄꀷ€¿Ÿì¹ç¡€warning¥á¥Ã¥»¡Œ¥ž€ÏŒÎ€Æ€é€ì€Þ€¹¡¥
- (5)
- KC_SETUNDEFKEYFUNCTION - Ì€ÄêµÁ¥¡Œ€ËÂЀ¹€ëµ¡Çœ€ÎÀßÄê
Æɀ߀òÆþÎÏ€·€Æ€€€ëŸõÂÖ€ÇC-t€òÂǀÀ¿€È€€Î€è€Š€ËÌ€ÄêµÁ¥¡Œ€òÆþÎÏ€·€¿»þ €ËŒè€é€ì€ëœèÍý€ò»ØÄꀷ€Þ€¹¡¥Ì€ÄêµÁ¥¡Œ€ËÂбþ€·€Æ¹Ô€ï€ì€ëœèÍý€È€·€Æ€Ï°Ê ²Œ€ÎœèÍý€¬€¢€ê€Þ€¹¡¥-
- ¥Þ¥¯¥íÌŸ
- œèÍý
- kc_normal
- ¥Ó¡Œ¥×
- kc_through
- ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
- kc_kakutei
- ³ÎÄꀷ¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
- kc_kill
- ŸÃµî€·¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à€ËÅÏ€¹
kc_normal€ò»ØÄꀷ€¿Ÿì¹ç¡€³°ÉôÊÑ¿ôjrBeepFunc€ËÀßÄꀵ€ì€¿ŽØ¿ô€¬Ì€ÄêµÁ¥¡Œ ÆþÎÏ»þ€Ë¥é¥€¥Ö¥é¥ê€Ë€è€Ã€ÆŒ«Æ°Åª€ËžÆ€ÓœÐ€µ€ì€Þ€¹¡¥jrBeepFunc€ËÃÍ€òÀßÄê €·€Ê€€Ÿì¹ç€Ë€Ï(jrBeepFunc == NULL€ÎŸì¹ç€Ë€Ï)²¿€âµ¯€³€ê€Þ€»€ó¡¥
(Îã)
extern (*jrBeepFunc)(), beep(); jrBeepFunc = beep; XKanjiControl(dpy, win, KC_SETUNDEFKEYFUNCTION, kc_normal);
- (6)
- KC_SETMODEINFOSTYLE - ¥â¡Œ¥ÉŸðÊó€ÎÉœžœ
¥â¡Œ¥ÉŸðÊó€òÊž»úÎó€Ç€Ï€Ê€¯¥Ó¥Ã¥È¥Þ¥Ã¥×€Ê€É€Î¥Ç¡Œ¥¿€ÇÉœŒš€·€¿€€Ÿì¹ç€¬€¢ €ê€Þ€¹¡¥€œ€Î€è€Š€ÊŸì¹ç€Ë€Ï¥â¡Œ¥ÉŸðÊó€È€·€Æ¿ôÃͥǡŒ¥¿€¬ÊրÀƀ¯€ë€ÈœèÍý €¬€·€ä€¹€¯€Ê€ê€Þ€¹¡¥XKanjiControl€ÇKC_SETMODEINFOSTYLE€ò »ØÄꀷ¡€arg€Ë£±€òÅÏ€¹€³€È€Ë€è€Ã€Æ€œ€ì°Êžå€ÏXKanjiStatus¹œÂ€ÂÎ €Îmode¥á¥ó¥Ð€Ë€Ï¥â¡Œ¥É€òÉœ€¹¿ôÃÍ€Ë'@'(0x40)€ò²Ã€š€¿£±Êž»ú€¬ÊÖ€µ €ì€ë€è€Š€Ë€Ê€ê€Þ€¹¡¥¥â¡Œ¥É€òÉœ€¹¿ôÃÍ€ËÊÑŽ¹€¹€ëŸì¹ç€Ë€ÏÊրÀƀ€¿Êž»úÎó €«€é'@'(0x40)€ò°ú€€Þ€¹¡¥¥â¡Œ¥É€òÉœ€¹¿ôÃ̀ˀĀ€€Æ€ÏÆþÎϥ⡌¥É€Î Êѹ¹((2)KC_CHANGEMODE)€Î€³€Š€ò»²ŸÈ€·€Æ²Œ€µ€€¡¥
- (7)
- KC_KAKUTEI¡€(8) KC_KILL - ÆþÎÏÃæ€ÎÊž»úÎó€ÎÊüŽþ
ÆþÎÏÃæ€ÎÊž»úÎó€ò²¿€é€«€ÎÅÔ¹ç€ÇÊüŽþ€·€¿€€Ÿì¹ç€¬€¢€ê€Þ€¹¡¥ÊüŽþ€¹€ëŸì¹ç€Ë ÆþÎÏÃæ€ÎÊž»úÎó€ò³ÎÄêÊž»úÎó€È€·€ÆŒè€ê¹þ€ó€Ç€«€éÊüŽþ€·€¿€€Ÿì¹ç€ÈÁŽ€¯ŒÎ€Æ €Æ€·€Þ€Ã€Æ€«€éÊüŽþ€·€¿€€Ÿì¹ç€¬€¢€ê€Þ€¹¡¥³ÎÄꀹ€ë Ÿì¹ç€Ë€ÏXKanjiControl€Ë€ÆKC_KAKUTEI€ò»ØÄꀷ¡€ÊüŽþ€¹€ë Ÿì¹ç€Ë€ÏKC_KILL€ò»ØÄꀷ€Þ€¹¡¥
€³€ÎœèÍý€ÏÉœŒš€Ë±Æ¶Á€òÍ¿€š€ë€Î€ÇÂè4°ú¿ô€Ë€ÏXKanjiStatusWithValue¹œÂ€ Â΀ò»ØÄꀷ€Ê€±€ì€Ð€Ê€ê€Þ€»€ó¡¥-
XKanjiStatusWithValue ksv; XKanjiStatus ks; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; XKanjiControl(dpy, win, KC_KAKUTEI, &ksv); len = ksv.val; .....
- (9)
- KC_QUERYMODE - ¥â¡Œ¥É€ÎÌ䀀¹ç€ï€»
žœºß€Î¥â¡Œ¥É€òÌ䀀¹ç€ï€»€ë€Ë€ÏXKanjiControl€ÇKC_QUERYMODE€ò»ØÄꀷ€Þ€¹¡¥
Âè4°ú¿ô€Ë€Ï¥â¡Œ¥ÉÊž»úÎó€ò³ÊÇŒ€¹€ë€¿€á€ÎÊž»úÇÛÎó€Î¥Ý¥€¥ó¥¿€ò»ØÄꀷ€Þ€¹¡¥ ¥â¡Œ¥ÉÊž»úÎó€Ï¥Ì¥ëÊž»ú€Çœª€ï€ëÊž»úÎó€Ç€¹¡¥€³€³€Ë¿ôÃÍ€¬ÊÖ€ë€è€Š€Ë€¹€ë€Ë €ÏXKanjiControl€ÇKC_SETMODEINFOSTYLE€ò»ØÄꀷ€Æ¥â¡Œ¥ÉÊž»úÎó€Î¥¹¥¿¥€¥ë €òÊѹ¹€·€Æ€ª€€Þ€¹¡¥
(Îã)-
char currentMode[MAXMODELEN]; ..... XKanjiControl(dpy, win, KC_QUERYMODE, currentMode); .....
- (10)
- KC_SETSERVERNAME - ¥µ¡Œ¥Ð€Î»ØÄê
€«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€È€·€Æ€É€Î¥µ¡Œ¥Ð€ò»È€Š€«€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥à €òœªÎ»€¹€ë€³€È€Ê€·€ËÀÚÂØ€š€ë€³€È€¬²ÄÇœ€Ç€¹¡¥€«€ÊŽÁ»úÊÑŽ¹¥µ¡Œ¥Ð€È€·€ÆÀÜ Â³€¹€ë€Ù€¥µ¡Œ¥Ð€ò»ØÄꀹ€ë€Ë€ÏXKanjiControl€ÇKC_SETSERVERNAME€ò»ØÄꀷ €Þ€¹¡¥Âè4°ú¿ô€Ë€ÏÀܳ€·€¿€€¥µ¡Œ¥ÐÌŸ€ò»ØÄꀷ€Þ€¹¡¥
- (11)
- KC_SETINITFILENAME - ¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€Î»ØÄê
¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ò¥¢¥×¥ê¥±¡Œ¥·¥ç¥ó¥×¥í¥°¥é¥àŠ€«€éÊѹ¹€¹€ë€³€È€¬€Ç €€Þ€¹¡¥¥«¥¹¥¿¥Þ¥€¥º¥Õ¥¡¥€¥ë€ÎÊѹ¹€ÏXKanjiControl€Î Âè3°ú¿ô€ËKC_SETINITFILENAME€ò»ØÄꀷ¡€Âè4°ú¿ô€Ë¥Õ¥¡¥€¥ëÌŸÊž»úÎó€ò»ØÄê €¹€ë€³€È€Ë€è€ê¹Ô€€€Þ€¹¡¥€³€ÎœèÍý€ò¹Ô€ŠŸì¹ç€ÏKC_INITIALIZE€ËÀèΩ€Ã€ÆŒÂ ¹Ô€·€Æ€ª€«€Ê€±€ì€Ð€Ê€ê€Þ€»€ó¡¥
(Îã)-
char *inifile = "app-own.canna" ..... XKanjiControl(dpy, win, KC_SETINITFILENAME, initfile); .....
- (12)
- KC_CLOSEUICONTEXT - ¥³¥ó¥Æ¥¯¥¹¥È€Î¥¯¥í¡Œ¥º
XKanjiControl€äXKanjiString€òžÆ€ÓœÐ€¹€È¡€dpy, win€ÎÁȀ߹ç€ï€»€Ë ÂЀ·€Æ€Ò€È€Ä€ÎÊÑŽ¹¥³¥ó¥Æ¥¯¥¹¥È€ò³ä€êÅö€Æ€Þ€¹¡¥ º£€Þ€Ç»È€ï€ì€Æ€€€Ê€€dpy, win€Î ÁȀ߹ç€ï€»€òXKanjiString€¢€ë€€€ÏXKanjiControl€ËÍ¿€š€ë€³€È€¬²ÄÇœ €Ç€¢€ê¡€€œ€ÎŸì¹ç¡€€œ€Î¥Š¥£¥ó¥É¥ŠÍр˿·€¿€Ë¥³¥ó¥Æ¥¯¥¹¥È€¬ºîÀ®€µ€ìɬÍ×€Ê¥á ¥â¥ê€¬³ÎÊÝ€µ€ì€Þ€¹¡¥
€œ€ì€Þ€Ç»ÈÍÑ€·€Æ€€€¿¥Š¥£¥ó¥É¥Š€¬»È€ï€ì€Ê€¯€Ê€Ã€¿Ÿì¹ç€Ë¡€€œ€Î¥Š¥£¥ó¥É¥Š€Ë³ä €êÅö€Æ€Æ»È€Ã€Æ€€€¿¥³¥ó¥Æ¥¯¥¹¥ÈÍр˳ÎÊÝ€µ€ì€¿¥á¥â¥ê€ò ³«Êü€¹€ë€Ë€ÏXKanjiControl€òÂè3°ú¿ô€ËKC_CLOSEUICONTEXT€ò»ØÄꀷ€ÆžÆ€Ó œÐ€·€Þ€¹¡¥
€³€ÎœèÍý€ÏÉœŒš€ÎÊѲœ€ò€È€â€Ê€Š€Î€ÇÂè4°ú¿ô€Ë€ÏXKanjiStatusWithValue¹œ €Â΀òÍ¿€š€Þ€¹¡¥
(Îã)-
XKanjiStatusWithValue ksv; XKanjiStatus ks; unsigned char buf[SOMESIZE]; ..... ksv.ks = &ks; ksv.buffer = buf; ksv.bytes_buffer = SOMESIZE; XKanjiControl(dpy, win, KC_CLOSEUICONTEXT, &ksv); .....
- (13)
- KC_QUERYMAXMODESTR - ¥â¡Œ¥ÉÉœŒšÊž»úÎó€ÎºÇÂçĹ€òµá€á€ë¡¥
œéŽü²œ¥Õ¥¡¥€¥ë€Ë€Æ¥â¡Œ¥ÉÉœŒšÊž»úÎ󀬥«¥¹¥¿¥Þ¥€¥º€Ç€€Þ€¹€¬¡€¥«¥¹¥¿¥Þ¥€ ¥º€µ€ì€¿·ë²Ì¥â¡Œ¥ÉÉœŒšÊž»úÎó€Ë€É€ì€À€±€ÎÉœŒšÎΰè€ò³ÎÊÝ€¹€ë€«€òÄŽ€Ù€ëɬ Í×€¬€¢€ëŸì¹ç€¬€¢€ê€Þ€¹¡¥XKanjiControl€òÂè3°ú¿ô€ËKC_QUERYMAXMODESTR€ò »ØÄꀷ€ÆžÆ€ÓœÐ€¹€³€È€Ë€è€ê¡€¥â¡Œ¥ÉÉœŒšÊž»úÎó€È€·€Æ²¿¥³¥é¥àɬÍ×€«€¬ÊÖ€ê Ã̀Ȁ·€ÆÊÖ€µ€ì€Þ€¹¡¥€³€³€ÇžÀ€Š¥³¥é¥à€È€ÏÈŸ³Ñ±Ñ¿ôÊž»ú€ÎÊž»úÉý€ò£±€È€·€¿ €È€€ÎÃÍ€òŒš€·€Þ€¹¡¥
Âè4°ú¿ô€ÏÍÑ€€€é€ì€Ê€€€Î€Ç¥À¥ß¡ŒÃ̀Ȁ·€Æ0€òÍ¿€š€Þ€¹¡¥
(Îã)-
int max_mode_columns; ..... max_mode_columns = XKanjiControl(dpy, win, KC_QUERYMAXMODESTR, 0); .....
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre