[immodule-qt] Re: [SCIM] scim-qtimm 0.7 released

Zhe Su james.su at gmail.com
Sun Sep 5 05:00:27 EEST 2004


Hi,
  Is it possible to fix this issue just like what Cougar said? 

Regards
James Su

On Sat, 4 Sep 2004 21:17:41 +0000, LiuCougar <liucougar at gmail.com> wrote:
> On Sun, 05 Sep 2004 13:01:20 +0200, David <david at plm11.pl> wrote:
> > *This message was transferred with a trial version of CommuniGate(tm) Pro*
> > LiuCougar wrote:
> >
> > I would like to ask, whether Vietnamese m17n-vi-viqr is working
> > correctly for you? It seems broken to me.
> > I type: To^i te^n la` Dda vi.t.
> > I should get: Tôi tên là Đa vịt.
> > I am getting: Tô itnê là Đ avịt.
> >
> > Can you confirm that? Or it is just something wrong on my system?
> Confirmed. This is a potential issue deep in the qt-immodule patch,
> rather than scim-qtimm itself.
> 
> Let's take "ds" as the example:
> if you type "ds" in qt apps with Vietnamese m17n-vi-viqr, you should
> see "ds", but with the current qt-immodule, you would get "sd"!
> 
> This is due to the fact that the IMEnd event in qt-immodule is posted
> to be processed later. However, in the Vietnamese m17n-vi-viqr input
> method, after pressing "s", the first "d" is committed and the "s" is
> forwarded to qt. Because the commit of "d" is scheduled while the
> forward of "s" takes effect immediately, we get "sd", rather than "ds"
> as expected
> .
> I changed one function in kernel/qapplication_x11.cpp to overcome this issue:
> 
> void QApplication::postIMEvent( QObject *receiver, QIMEvent *event )
> {
>     if( event->type() == QEvent::IMCompose )
>         postEvent( receiver, event );
>     else {
>         sendEvent( receiver, event );
>         delete event;
>     }
> }
> 
> (With this modification, the input "To^i te^n la` Dda vi.t." will
> generate the correctly output.)
> 
> Of course, I think we need more discuss to decide how we can solve it
> in a more appropriate method.
> 
> > I would also like to learn how to write input modules for SCIM with
> > behaviour similar to Vietnamese (several keys that add diacritics - for
> > example to enter transcriptions in linguistic texts that make heavy use
> > of diacritics) and similar to Chinese (presenting candidate characters -
> > as an example can be IME to input cuneiform - it should behave exactly
> > as Chinese IMEs). Is there some tutorial or documentation for this
> > available, or the only way to learn to do it is to read the sources?
> Unfortunately, currently no doc about writing IMEngine exists.
> However, please have a look at the src/scim_compose_key.cpp and
> src/scim_compose_key.h in scim-lib, you can see it is not so hard to
> implement IMEngines. If you have any questions, do not hesitate to ask
> here.
> 
> 
> 
> Regards,
> Cougar
> 
> --
> "People's characters are strengthened through struggle against
> difficulties; they are weakened by comfort."
> - Old Chinese adage
> _______________________________________________
> immodule-qt mailing list
> immodule-qt at freedesktop.org
> http://freedesktop.org/mailman/listinfo/immodule-qt
>



More information about the immodule-qt mailing list