Hello, Angus; I'm back now and this is how far I've got:
1. Migration of XIC from flresource.c to forms.c is now complete (more or less). If I remove stuffs in lyxim.C from CJK-LyX, I find that precomposition of CJK-characters on both XWorkArea(main lyx window) and the xform box become possible! I could confirm the XIC for XWorkArea and that for xform box differ. However, I cannot find the appropriate variables to set the position for the precomposition. I need the position parameters similar to "bufferview->text->xpos" and the like as in lyx. 2. So I can input CJK-characters on xforms-box, but on XWorkArea, although I can see the composed CJK-characters, they disappear as soon as I hit the key "Space-bar". 3. Of course, to get the characters on the XWorkArea, I need your function, "fl_get_composed_string". But I think your patch, "xforms.diff" needs your close attention. After applying your patch I found inputting CJK-characters on xforms-box as well as on XWorkArea became impossible! I could see the composed CJK-characters as in "1" and "2" above, but they disppeard as soon as I hit "Space bar". Even English characters could not be inputted on XWorkArea (English on the forms-box was O.K.). 4. I found some partial resolution of the problem. Changing "*ptr_keybuf = &keybuf;" to "*ptr_keybuf = keybuf;" enables me to input English on the XWorkArea. Furthermore, removing the two lines, "if (keysym == NoSymbol)" I could input CJK-characters on the XWorkArea! return; But in this case, the two keys, "Space bar" and the "back-space" do not function at all. 5. I could not find any hack for inputting CJK-characters on the xform-box. I hope these inputs make you suggest another hints or resolutions for me to work on. Regards, cghan