Wednesday, May 30, 2012

Indian internationalization enhancements in Fedora 17


    Yesterday Fedora 17 Beefly Miracle got released and this is time to update on enhancement and new features of Indian languages.

Indian official 22 language support
    This is one i am aiming from long time and glad to tell you achieved this in Fedora 17. Now we support i18n for all these language. This is definitely one of the major achievement by Indian open source community.
    We now have fonts, rendering support (mostly new languages are based on Devanagari ), Input methods (Inscript and for some inscript2)

Challenges we faced
  • CLDR
    - Most important part we were looking for locale data. Unfortunately we do not have much active contributors for missing languages in opensource community.
    - So searching them was big pain. Lucky enough finally found some. Got Bodo locale from Unicode CLDR itself.
  • Fonts
    - Lucky enough new languages are using Devanagari scripts as well, so some minor fixes in Lohit Devanagari made it compatible with newly added language.
  • Input method
    - We do have inscript layout for most of the language. Missing languages layout is standardize with the Enhanced inscript kayboard development.
  • Fontconfig
    - Fonts were not getting selected for languages due to improper or missing orthography file, special thanks to tagoh for taking time to review all ortho file and commit it in upstream.
Unicode 6.0 compatibility for supported script
  • Lohit fonts now supports Unicode 6.0
Details available at http://fedoraproject.org/wiki/Features/IndicUnicode6

english-typing-booster
    English Typing Booster is a predictive input method for the ibus platform. It predicts complete words based on partial input. One can then simply select the desired word from a list of suggestions and improve one's typing speed and spelling.
    http://fedoraproject.org/wiki/Features/english-typing-booster


Enhanced inscript layout
    I do agree the standard is still in Draft stage. It almost two year we are waiting for getting it release as a standard.
    Inscript2 has some major enhancements over the existing keyboard. This will give community a better chance to test and provide feedback.
    Also inscript2 support more languages, so at least we can make it available to community having no standard for input method yet.
    Example: Kashmiri in Devanagari
     More information at http://fedoraproject.org/wiki/Features/Inscript2_Keymaps

Font configuration tool
   This one many people are waiting for long time.
    Many time users do not like default system fonts, they either want to change it with some downloaded fonts. This tool allows them to do it.
    Just download font, install it. Run fonts-tweak-tool and select font under particular category and ok. 
    It will create custom fontconfig file for users, and user will get selected font for language as a default. Yahoooooooo!!
       More information at http://fedoraproject.org/wiki/Features/FontConfigurationTool

Other improvement
  • Language specific Lohit fonts for  Nepali and Marathi
    - We were using Lohit Devanagari for these languages early with locl feature of Open type fonts. Still 'locl' feature does not work well with most of the rendering engine.
    - As well users in India use to be in en_US locale.So now provided fonts Lohit-Marathi and Lohit-Nepali users can get there expected localize shape without any dependency.
  • smc-fonts
    - SMC community has done improvements and resolved bugs in Meera, Rachana and other fonts. These are available in Fedora 17.
  • Fonts for kannada
    - navilu and gubbi fonts are now available in Fedora. If anyone wants to use this as a default for Kannada just do it with fonts-tweak-tool.
  • Indic typing booster
    - Major news it is now supporting Bengali language with Probhat, itrans and inscript layout. Do give it try. Enhancements for presently supported languages.
Road ahead
  • Following languages are written in multiple script, we are presently supporting it in Devanagari so need to support in other scripts as well.
    • Santhali (Ol Chiki)
    • Manipuri (Meetei Mayek)
  • In Fedora 18 we are going with ibus-hunspell-table, it uses better architecture for predictive text input method than existing typing booster. 
    • More efficient by using hunspell dictionary in backend. At one go it support all m17n layout.
    • It supports all languages available in hunspell
  • Liberation fonts with better license.
  • This is from my side i am sure there are many more :)