Thanks for the details.
I think that a better implementation of inputMethodEvent would be the following:
void
QTMWidget::inputMethodEvent (QInputMethodEvent* event) {
QString const & commit_string = event->commitString();
if (!commit_string.isEmpty()) {
int key = 0;
for (int i = 0; i < commit_string.size(); ++i) {
QKeyEvent ev(QEvent::KeyPress, key, Qt::NoModifier, commit_string[i]);
keyPressEvent(&ev);
}
}
event->accept();
}
Could you be so nice to test if it is OK for you?
Actually I have some problems on my system with inputMethod. If I type `+a+b
then I obtain àab and not àb as I expect. In this case the inputMethod handler
is activated by the first dead key but apparently spourious keypresses are
generated AFTER the inputMethodEvent has been handled and it seems to me a bug
with QT (which I cannot reproduce on Linux). If you have a Mac, could you tell
me what is the output of the above sequence after you apply your patch to the
current TeXmacs?
Best
Massimiiano
On 12 sept. 2010, at 07:23, Zou Hu wrote:
> Take MacOSX 10.6 as an example:
>
> 1. Go to "System Preferences -> Language and Text -> Input Sources", select
> one of the CJK input methods such as "Chinese Simplified".
>
> 2. Now download Chinese font (fireflysung) from texmacs website and extract
> it to ~/.TeXmacs directory. Start texmacs, click the menu item
> "Edit->Preference->Language->Chinese" and restart it.
>
> 3. Inside texmacs, press Cmd+Space to activate Chinese input method. Now you
> could input some English characters, then press space, and the corresponding
> Chinese characters will be inserted to texmacs editor.
>
> 在2010-09-11 22:39:23,"Gubinelli Massimiliano" <[email protected]> 写道:
> >Dear Zoo,
> > I will integrate the first patch on input methods. I would like to have a
> > bit more of details on how it works and how to check it on a european
> > system. Thanks.
> >
> >For the locate patch a better alternative should be found. A priori
> >use_locate is true only if /bin/locate is available on the system (see
> >init_texmacs.cpp:280) so I do not understand why you need to comment it. In
> >any case a ifdef would be better.
> >
> >Best
> >Massimiliano
> >
> >
> >
> >On 9 sept. 2010, at 15:06, Zou Hu wrote:
> >
> >> Hi all, in Qt-texmacs, input methods for CJK characters is unworkable.
> >> Attached is a patch for making it works just as x11-texmacs. It supports
> >> commitStrings but still not preeditStrings, but this is enough for most of
> >> the input methods.
> >>
> >> Also, to make texmacs able to find CJK fonts under Windows, I need to make
> >> a minor change to tt_file.cpp, since under Windows "use_locate" is false.
> >>
> >> Best.
> >> <patch04.diff>_______________________________________________
> >> Texmacs-dev mailing list
> >> [email protected]
> >> http://lists.gnu.org/mailman/listinfo/texmacs-dev
> >
_______________________________________________
Texmacs-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/texmacs-dev