gtk+ input method with Bengali

From: Tavis Barr (tavis.barr@liu.edu)
Date: Tue Feb 11 2003 - 19:05:52 EST

  • Next message: Dom Lachowicz: "Re: gtk+ input method with Bengali"

    Hi everyone.

    I just installed AbiWord 1.1.3 from the RPMs and I have to say I'm very
    impressed by the progress. Congratulations.

    I'm trying to get the Bengali input method to work under gtk+. I use a
    plugin called imbeng, available from:

    http://sourceforge.net/project/showfiles.php?group_id=43331

    I fire up AbiWord under and Indian Bengali locale (LC_ALL=bn_IN.UTF-8
    abiword-2.0 &) and change the font to a Bengali font (Mukti in this case
    but I don't think it matters).

    The Bengali input method is correctly chosen by default (i.e., if I
    right-click in the text entry area, it's selected under "Input Methods")
    and when I start typing, the appropriate Bengali characters come out.
    This already means that it's at least half-working, because the imbeng
    program is responsible for turning multiple keystrokes into
    multiple-keystroke characters.

    However, the characters don't glyph properly when I display them. There
    are two points here and I'll try to give some background.

    Bengali (and other Devanagari-based scripts) work in a system where each
    syllable in a word is represented by a glyph for a consonant (or a
    single glyph for a string of consonants if they are pronpounced
    together, such as "str" or "pl") and an attached glyph for the vowel
    that follows that consonant. (Words that start with a vowel get a
    separate starting-vowel glyph.) Depending on the vowel, sometimes the
    vowel sign comes to the left of the consonant, sometimes to the right.
    For example, "e" and "i" come to the left of the consonant in Bengali,
    "a" to the right, "u" below, and "o" on both sides.

    So, for example, if I type the Bengali word "sneho" (meaning
    "affection"), I should expect to get a glyph for "sn", and then the
    glyph for "e" which in this case comes to the left of the glyph for
    "sn."

    Instead, I get the glyph for s followed by the glyph for n, and the "i"
    to the right of it all.

    One thing that makes me think that this is an issue of rendering and not
    input: Each of the consonants (s and n), when it is displayed, is
    followed by a special Bengali punctuation marker underneath that sort of
    means "don't treat the next character as a separate syllable." So the
    proper way to render appears to involve combining consonants into one
    glyph when they are followed by this marker.

    Currently, gedit 2.0 renders this input method correctly.

    I also suspect that if this problem exists for Bengali, it probably
    exists for other Indian languages.

    I'm sorry I don't know more about the internals to be able to suggest
    precisely what's wrong. I hope this note is helpful anyway in pointing
    out a bug. For more information on rendering Bengali, you might wish to
    visit the Bengali Linux project at www.bengalinux.org and talk to one of
    the developers there, who may at least know how it works on gedit (which
    is their reference program).

    Although I'm not familiar with the programs, I can and do code; let me
    know if there is any way I can assist with this.

    Thanks,
    Tavis



    This archive was generated by hypermail 2.1.4 : Tue Feb 11 2003 - 19:10:11 EST