i18n bug regarding Arabic-Indic numbers needinfo.

Shaheed srhaque at iee.org
Mon Apr 19 23:03:40 BST 2004


On Monday 19 April 2004 17:34, Diego Iastrubni wrote:
> Munzir, wrong list. I am forwarding to kde-core-devel (this was in
> cooker-I18N originally).
>
> ביום שני, 19 באפריל 2004, 05:28, נכתב על ידי Munzir Taha:
> > I noticed this odd bug and need you to show me where do I need to file
> > those bugs.
> >
> >
> > Hinid numberals are not numbers in linux!
> >
> > In kppp:
> > If I type the phone number in Hindi numerals e.g. ٣٦٠٦٠٦٠ . It won't dial
> > properly.
>
> report in in bugs.kde.org.
>
> > In kspread:
> > Hindi numerals won't be considered numbers. They won't add/subtract/...
>
> again, report it.
>
> > This is very serious and we need to file a bug. What component is
> > responsible of this? glibc? locales? application-specific?
>
> maybe qt?

Oh dear, I suspect it affects all Indic languages. Qt (qt-copy from CVS head 
of a few days ago, Qt 3.3.1) fails for all the Bengali integers too:

Latin...
0 is a number? 1
Bengali...
0 is a number? 0
1 is a number? 0
2 is a number? 0
3 is a number? 0
4 is a number? 0
5 is a number? 0
6 is a number? 0
7 is a number? 0
8 is a number? 0
9 is a number? 0

is the output from the attached program.

#include <qstring.h>
#include <iostream>
using namespace std;

int main(int argc, char **argv)
{
    QString number0("০");
    QString number1("১");
    QString number2("২");
    QString number3("৩");
    QString number4("৪");
    QString number5("৫");
    QString number6("৬");
    QString number7("৭");
    QString number8("৮");
    QString number9("৯");

    cout << "Latin..." << endl;
    cout << "0 is a number? " << QString("0")[0].isNumber() << endl;
    cout << "Bengali..." << endl;
    cout << "0 is a number? " << number0[0].isNumber() << endl;
    cout << "1 is a number? " << number1[0].isNumber() << endl;
    cout << "2 is a number? " << number2[0].isNumber() << endl;
    cout << "3 is a number? " << number3[0].isNumber() << endl;
    cout << "4 is a number? " << number4[0].isNumber() << endl;
    cout << "5 is a number? " << number5[0].isNumber() << endl;
    cout << "6 is a number? " << number6[0].isNumber() << endl;
    cout << "7 is a number? " << number7[0].isNumber() << endl;
    cout << "8 is a number? " << number8[0].isNumber() << endl;
    cout << "9 is a number? " << number9[0].isNumber() << endl;
}






More information about the kde-core-devel mailing list