--nextPart2481459.bKtPmyCAv1 Content-Type: multipart/mixed; boundary="Boundary-01=_9LVZCERGh06Iz+O" Content-Transfer-Encoding: 7bit Content-Disposition: inline --Boundary-01=_9LVZCERGh06Iz+O Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hello, We were working for Turkish spellcheking support in free/open source projec= ts=20 for a while. Adding support for KDE was one but important part for us in=20 Pardus [1] project. There were projects willing to add Turkish spell checking support via Aspel= l=20 project but they have failed - AFAIK due to the design of Aspell. Now there= =20 is a new, promissing project called Zemberek[2]. Zemberek is a java library. There are toughts on re-writing it in C/C++ but= I=20 don't think this will happen soon. So we tried to separate the java part of= =20 the system from the applications using a daemon and a client. We are testin= g=20 the result for some time and its seems to be working fine[3].=20 The only dependency in the KDE part will be the client called zpspell[4]. = And=20 I'll provide support for both the KDE part and zpspell. Besides, I'll also= =20 provide a KSpell2 plugin for KOffice and future releases of KDE. We don't want this feature to be specific for our distribution. Is it possi= ble=20 to apply the attached patch to CVS? There is also support for hspell (Hebre= w)=20 so I don't think adding support for a specialized client like this will be= =20 trouble. 1. http://www.uludag.org.tr/eng/index.html 2. https://zemberek.dev.java.net/ 3. http://www.uludag.org.tr/eng/projeler/masaustu/zemberek-pardus/index.html 4. http://svn.uludag.org.tr/uludag/trunk/zpspell/ best regards, =2D-=20 Bar=C4=B1=C5=9F Metin --Boundary-01=_9LVZCERGh06Iz+O Content-Type: text/x-diff; charset="utf-8"; name="kdelibs-3.4.0-zemberek.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="kdelibs-3.4.0-zemberek.patch" diff -ur kdelibs-3.4.0.orig/kdeui/ksconfig.cpp kdelibs-3.4.0/kdeui/ksconfig= =2Ecpp =2D-- kdelibs-3.4.0.orig/kdeui/ksconfig.cpp 2005-02-04 01:33:10.000000000 += 0200 +++ kdelibs-3.4.0/kdeui/ksconfig.cpp 2005-03-20 03:14:15.000000000 +0200 @@ -146,6 +146,7 @@ clientcombo->insertItem( i18n("International Ispell") ); clientcombo->insertItem( i18n("Aspell") ); clientcombo->insertItem( i18n("Hspell") ); + clientcombo->insertItem( i18n("Zemberek") ); connect( clientcombo, SIGNAL (activated(int)), this, SLOT (sChangeClient(int)) ); glay->addMultiCellWidget( clientcombo, 4, 4, 1, 2 ); @@ -231,7 +232,12 @@ dictcombo->clear(); dictcombo->insertItem( i18n("Hebrew") ); sChangeEncoding( KS_E_CP1255 ); =2D } + } else if ( iclient =3D=3D KS_CLIENT_ZEMBEREK ) { + langfnames.clear(); + dictcombo->clear(); + dictcombo->insertItem( i18n("Turkish") ); + sChangeEncoding( KS_E_UTF8 ); + }=20 else getAvailDictsAspell(); } @@ -385,6 +391,11 @@ dictcombo->clear(); langfnames.append(""); // Default dictcombo->insertItem( i18n("Hebrew") ); + } else if ( iclient =3D=3D KS_CLIENT_ZEMBEREK ) { + langfnames.clear(); + dictcombo->clear(); + langfnames.append(""); + dictcombo->insertItem( i18n("Turkish") ); } else getAvailDictsAspell(); @@ -637,6 +648,11 @@ box->insertItem( i18n("Hebrew") ); langfnames.append(""); // Default sChangeEncoding( KS_E_CP1255 ); + } else if ( iclient =3D=3D KS_CLIENT_ZEMBEREK ) { + box->clear(); + box->insertItem( i18n("Turkish") ); + langfnames.append(""); + sChangeEncoding( KS_E_UTF8 ); } else { box->clear(); diff -ur kdelibs-3.4.0.orig/kdeui/ksconfig.h kdelibs-3.4.0/kdeui/ksconfig.h =2D-- kdelibs-3.4.0.orig/kdeui/ksconfig.h 2004-09-09 18:23:53.000000000 +03= 00 +++ kdelibs-3.4.0/kdeui/ksconfig.h 2005-03-20 03:14:59.000000000 +0200 @@ -56,7 +56,8 @@ enum KSpellClients { KS_CLIENT_ISPELL=3D0, KS_CLIENT_ASPELL=3D1, =2D KS_CLIENT_HSPELL=3D2 + KS_CLIENT_HSPELL=3D2, + KS_CLIENT_ZEMBEREK=3D3 }; =20 /** diff -ur kdelibs-3.4.0.orig/kdeui/kspell.cpp kdelibs-3.4.0/kdeui/kspell.cpp =2D-- kdelibs-3.4.0.orig/kdeui/kspell.cpp 2005-02-25 16:53:32.000000000 +02= 00 +++ kdelibs-3.4.0/kdeui/kspell.cpp 2005-03-20 03:16:17.000000000 +0200 @@ -177,6 +177,10 @@ *proc << "hspell"; kdDebug(750) << "Using hspell" << endl; break; + case KS_CLIENT_ZEMBEREK: + *proc << "zpspell"; + kdDebug(750) << "Using zemberek(zpspell)" << endl; + break; } =20 if ( ksconfig->client() =3D=3D KS_CLIENT_ISPELL || ksconfig->client() = =3D=3D KS_CLIENT_ASPELL ) @@ -276,7 +280,7 @@ // -a : pipe mode // -S : sort suggestions by probable correctness } =2D else // hspell doesn't need all the rest of the options + else // hspell and Zemberek(zpspell) doesn't need all the rest of = the options *proc << "-a"; =20 if (trystart =3D=3D 0) //don't connect these multiple times diff -ur kdelibs-3.4.0.orig/kdeui/kspell.h kdelibs-3.4.0/kdeui/kspell.h =2D-- kdelibs-3.4.0.orig/kdeui/kspell.h 2004-10-10 11:56:18.000000000 +0300 +++ kdelibs-3.4.0/kdeui/kspell.h 2005-03-20 03:16:56.000000000 +0200 @@ -34,8 +34,8 @@ /** * %KDE Spellchecker * =2D * A %KDE programmer's interface to International ISpell 3.1, ASpell and =2D * HSpell. + * A %KDE programmer's interface to International ISpell 3.1, ASpell, + * HSpell and ZPSpell.. * A static method, modalCheck() is provided for convenient * access to the spellchecker. * --Boundary-01=_9LVZCERGh06Iz+O-- --nextPart2481459.bKtPmyCAv1 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) iD8DBQBCZVMAQY59PDyY1JsRAg2qAKCicKZ4aWMGv/BghJ9NpGlT2KfNtACfQRjR FmyuvzhxTqW2V9q76frDryM= =3ve+ -----END PGP SIGNATURE----- --nextPart2481459.bKtPmyCAv1--