GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
XKANJICONTROL(3) FreeBSD Library Functions Manual XKANJICONTROL(3)

̾??

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

TTY?????????ϡ??ؤǤ????ϡ????ܥ??????ɥ??Ǥ????Ϥʤɰ???Ū?ʥ????ܡ? ?????Ϥ??Ф??ƴ???ʸ?????ؤ??Ѵ????Ԥ??ޤ???
jrKanjiString?Ǥ??????????ꤵ?줿?ѥ??᥿?ˤ????Ԥ??ޤ???
?إ??????ɥ??????ƥ??ˤ????ơ??????ܡ???????(???????٥???)?δ???ʸ???? ?ؤ??Ѵ????Ԥ??ޤ???
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?Ȥ???Ϳ???Ʋ???????

????̾
??????
CANNA_KEY_Nfer
CANNA_KEY_Xfer
CANNA_KEY_Up
CANNA_KEY_Left
CANNA_KEY_Right
CANNA_KEY_Down
CANNA_KEY_Insert
CANNA_KEY_Rollup
CANNA_KEY_Rolldown
CANNA_KEY_Home
CANNA_KEY_Help
CANNA_KEY_Shift_Nfer
CANNA_KEY_Shift_Xfer
CANNA_KEY_Shift_Up
CANNA_KEY_Shift_Left
CANNA_KEY_Shift_Right
CANNA_KEY_Shift_Down
CANNA_KEY_Control_Nfer
CANNA_KEY_Control_Xfer
CANNA_KEY_Control_Up
CANNA_KEY_Control_Left
CANNA_KEY_Control_Right
CANNA_KEY_Control_Down
CANNA_KEY_F1
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?????椵???뵡ǽ?Ȥ??Ƥϰʲ??Σ??Ĥ??????ޤ???

??ǽ
???ʴ????Ѵ????????????롥
???ϥ⡼?ɤ??ѹ????롥
????????ɽ???λ??????????ꤹ?롥
???ʴ????Ѵ??ν?λ??????
̤???????????Ф??뵡ǽ?????????Ԥ???
?⡼?ɾ????????ͤ?ɽ?????뤫?ɤ????????ꤹ?롥
????????ʸ?????????ꤹ?롥
????????ʸ?????????????롥
???ߤΥ⡼?ɤ??䤤???碌?롥
??³???륵???Ф????ꤹ?롥
???????ޥ????ե??????????ꤹ?롥
?????ƥ????Ȥ򥯥????????롥
?⡼??ɽ??ʸ?????κ???Ĺ???????롥

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, "%s0, *p);
}
}

?裳???????֤?????warning???å??????ϥ饤?֥???????????malloc?????ޤ??? ?????ϡ?????KC_INITIALIZE??KC_FINALIZE???Ԥ??줿???˳????????ޤ??????? ?ꥱ?????????ץ??????ޤ???????free???ƤϤ????ޤ?????warning?Ϻ??ΤȤ? ??????64???å??????˸??ꤵ???ޤ????????ʾ??Υ??å????????ڼΤƤ????ޤ???

???å??????˴ޤޤ?????ǽ???Τ???warning?ˤϰʲ??Τ??Τ??????ޤ???

??
???????ޥ????ե????뤬?????ƥ??Τ??Τ??ޤ??Ƥ??٤????ѤǤ??ʤ???
??
???????ޥ????ե??????˥??󥿥å??????顼?????롥
??
?????޻??????Ѵ??????????ѤǤ??ʤ???
??
???ʴ????Ѵ??????????ѤǤ??ʤ???
??
???ʴ????Ѵ??????Ф???³?Ǥ??ʤ???

?裳?????Ȥ???NULL?????ꤷ??????warning???å??????ϼΤƤ????ޤ???

(2)
KC_CHANGEMODE - ???ϥ⡼?ɤ??ѹ?

???ϥ⡼?ɤ򥢥ץꥱ???????󤫤??ѹ????ޤ???request?? ??ʬ?ˤ?KC_CHANGEMODE?????ꤷ??arg??jrKanjiStatusWithValue??¤?? ?????ꤷ?Ʋ???????jrKanjiStatusWithValue??¤?Τ?val?????Фˤƥ⡼ ???ֹ??????ꤹ?뤳?Ȥˤ??????ܸ??⡼?ɤ??ڤ??ؤ????ޤ????⡼???ֹ??ϰ? ???Υޥ????Ǽ??????ޤ???

?ޥ????ֹ?
?⡼??
?????ե??٥åȥ⡼??
?Ѵ????ϥ⡼??
???????ϥ⡼??
???ѤҤ餬?ʳ??????ϥ⡼??
???ѥ??????ʳ??????ϥ⡼??
Ⱦ?ѥ??????ʳ??????ϥ⡼??
???ѥ????ե??٥åȳ??????ϥ⡼??
Ⱦ?ѥ????ե??٥åȳ??????ϥ⡼??
16?ʥ????????ϥ⡼??
???????ϥ⡼??
ñ????Ͽ?⡼??

???ε?ǽ?ˤ????⡼?ɤ??ѹ??????ȥ⡼??̾???Ϥ??Ȥ???¿????ɽ?????Ѳ??? ?????ޤ???ɽ?????ѹ???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 - ???ʴ????Ѵ??ν?λ??????

?ץ???????????λ?????ʤɤζ??̤Ǥ??ʴ????Ѵ??⽪λ???뤳?Ȥ????ꤷ?ޤ??? ???ʴ????Ѵ?????????λ??????????ɬ?????ν??????ԤäƲ??????????????ˤ? ???äƺ??ޤdzؽ????????Ƥ??ե?????????Ͽ?????ޤ???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, "%s0, *p);
}
}

?裳???????֤?????warning???å??????ϡ??饤?֥???????????malloc?????? ?????????ϡ?????KC_INITIALIZE??KC_FINALIZE???Ԥ??줿???˳????????ޤ??? ???ץꥱ?????????ץ??????ޤ???????free???ƤϤ????ޤ?????

warning?Ϻ??ΤȤ???????64???å??????˸??ꤵ???ޤ????????ʾ??Υ??å??? ?????ڼΤƤ????ޤ???

???å??????˴ޤޤ?????ǽ???Τ???warning?ˤϼ??Τ??Τ??????ޤ???

??
???񤬥????ޥ????ȤǤ??ʤ???

?裳?????Ȥ???NULL?????ꤷ?????硤warning???å??????ϼΤƤ????ޤ???

(5)
KC_SETUNDEFKEYFUNCTION - ̤???????????Ф??뵡ǽ??????

?ɤߤ????Ϥ??Ƥ??????֤?C-t???Ǥä??Ȥ??Τ褦??̤?????????????Ϥ????? ?˼????????????????ꤷ?ޤ???̤???????????б????ƹԤ??????????Ȥ??Ƥϰ? ???ν??????????ޤ???

?ޥ???̾
????
?ӡ???
???ץꥱ?????????ץ??????????Ϥ?
???ꤷ???ץꥱ?????????ץ??????????Ϥ?
?õ???ץꥱ?????????ץ??????????Ϥ?

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;

???????٥??Ȥ????ꤷ?ޤ???
?Ѵ?????????ʸ???????֤????ޤ???
?Хåե???Ĺ???????ꤷ?ޤ???
?????????ܥ????֤??ޤ???NULL?????ꤹ?뤳?Ȥ??Ǥ??ޤ???
XCompose??¤?ΤؤΥݥ??󥿤????ꤷ?ޤ???
???ʴ????Ѵ????ͻҤ??֤????ޤ???

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?????椵???뵡ǽ?Ȥ??Ƥϰʲ????????ޤ???

??ǽ
???ʴ????Ѵ????????????롥
???ϥ⡼?ɤ??ѹ????롥
????????ɽ???λ??????????ꤹ?롥
???ʴ????Ѵ??ν?λ??????
̤???????????Ф??뵡ǽ?????????Ԥ???
?⡼?ɾ????????ͤ?ɽ?????뤫?ɤ????????ꤹ?롥
????????ʸ?????????ꤹ?롥
????????ʸ?????????????롥
???ߤΥ⡼?ɤ??䤤???碌?롥
??³???륵???Ф????ꤹ?롥
???????ޥ????ե??????????ꤹ?롥
?????ƥ????Ȥ򥯥????????롥
?⡼??ɽ??ʸ?????κ???Ĺ???????롥

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, "%s0, *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?????Фˤƥ⡼ ???ֹ??????ꤹ?뤳?Ȥˤ??????ܸ??⡼?ɤ??ڤ??ؤ????ޤ????⡼???ֹ??ϰ? ???Υޥ????Ǽ??????ޤ???

?ޥ????ֹ?
?⡼??
?????ե??٥åȥ⡼??
?Ѵ????ϥ⡼??
???????ϥ⡼??
???ѤҤ餬?ʳ??????ϥ⡼??
???ѥ??????ʳ??????ϥ⡼??
Ⱦ?ѥ??????ʳ??????ϥ⡼??
???ѥ????ե??٥åȳ??????ϥ⡼??
Ⱦ?ѥ????ե??٥åȳ??????ϥ⡼??
16?ʥ????????ϥ⡼??
???????ϥ⡼??
ñ????Ͽ?⡼??

???ε?ǽ?ˤ????⡼?ɤ??ѹ??????ȥ⡼??̾???Ϥ??Ȥ???¿????ɽ?????Ѳ??? ?????ޤ???ɽ?????ѹ???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 - ???ʴ????Ѵ??ν?λ??????

?ץ???????????λ?????ʤɤζ??̤Ǥ??ʴ????Ѵ??⽪λ???뤳?Ȥ????ꤷ?ޤ??? ???ʴ????Ѵ?????????λ??????????ɬ?????ν??????ԤäƲ??????????????ˤ? ???äƺ??ޤdzؽ????????Ƥ??ե?????????Ͽ?????ޤ???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, "%s0, *p);
}
}

??4???????֤?????warning???å??????ϡ??饤?֥???????????malloc?????? ?????????ϡ?????KC_INITIALIZE??KC_FINALIZE???Ԥ??줿???˳????????ޤ??? ???ץꥱ?????????ץ??????ޤ???????free???ƤϤ????ޤ?????

warning?Ϻ??ΤȤ???????64???å??????˸??ꤵ???ޤ????????ʾ??Υ??å??? ?????ڼΤƤ????ޤ???

???å??????˴ޤޤ?????ǽ???Τ???warning?ˤϼ??Τ??Τ??????ޤ???

??
???񤬥????ޥ????ȤǤ??ʤ???

??4?????Ȥ???NULL?????ꤷ?????硤warning???å??????ϼΤƤ????ޤ???

(5)
KC_SETUNDEFKEYFUNCTION - ̤???????????Ф??뵡ǽ??????

?ɤߤ????Ϥ??Ƥ??????֤?C-t???Ǥä??Ȥ??Τ褦??̤?????????????Ϥ????? ?˼????????????????ꤷ?ޤ???̤???????????б????ƹԤ??????????Ȥ??Ƥϰ? ???ν??????????ޤ???

?ޥ???̾
????
?ӡ???
???ץꥱ?????????ץ??????????Ϥ?
???ꤷ???ץꥱ?????????ץ??????????Ϥ?
?õ???ץꥱ?????????ץ??????????Ϥ?

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);
.....

4 April 1991

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.