Submitted by moorecm on Wed, 12/09/2009 - 15:15.
I have a Red Hat Enterprise environment with SCIM setup to input Chinese characters. I can successfully toggle the input method with Ctrl-space and enter Chinese characters in an xterm.
When the focus changes to an XmTextField or XmText widget in the application, Ctrl-space does not do anything.
Does anyone know if SCIM can be used with OpenMotif? Are there other input method options available for internationalized applications?
Thank you!
Wed, 12/09/2009 - 19:18#1
fredk
You cannot display two
You cannot display two different fonts simultaneously in an XmText or XmTextField widget.
The Xmtext does not have a pre-defined translation for Ctrl+space. You could alter the widget's translation table (adding your own action) for Ctrl+space which would change the font, but any existing text in the widget would likely turn into jibberish.
You could also register a key press event handler to detect space key presses and check the event state for control mask. However, you would have the same problem with existing text in the widget.
--
Fred K
Wed, 12/09/2009 - 19:58#2
moorecm
I am using a Unicode font,
I am using a Unicode font, which can display both English and Chinese characters. My intention is not to change the font but to "register" SCIM as the input method for the application.
I have these three environment variables set:
export XMODIFIERS=@im=SCIM
export GTK_IM_MODULE=scim
export QT_IM_MODULE=scim
I was under the impression that [all] X applications could use an input method as long as XMODIFIERS was set properly. In the specific case of OpenMotif, do additional steps need to be taken?
I have also been playing with the XmNinputMethod resource without success:
*.inputMethod: SCIM
Mon, 01/25/2010 - 20:12#3
moorecm
I submitted bug 1510 for
I submitted bug 1510 for this, after I verified that it does work on OpenMotif 2.1.32. Somewhere after 2.1.32 input methods are broken in libXm.
EDIT: This is false. I must have made a mistake when testing the above; I have successfully retested it on 2.3.2.
Mon, 01/25/2010 - 20:10#4
moorecm
Update! In order to use
Update! In order to use SCIM with my application I had to: export XMODIFIERS, call XtSetLanguageProc and XSetLocaleModifiers explicitly before the X event loop, and use a fontType of FONT_IS_FONTSET.