Indian Language support for the Linux Operating System



Please click here to download the fonts for Indian Languages. View Page in Indian Languages

IntroductionNews & EventsTechnical DetailsFAQs And HowTosScreen ShotsDownloadContact UsLegal InformationUseful Links

Introduction

The basic IndiX agenda is that the text processing should be as easy for the Indian scripts as it is for English for the user. But within the computer, processing Indic text is not exactly the same as that for English.

The technological challenges addressed by IndiX is to identify the minimal, logical and required changes in Indic text processing and embed these changes within the lower most level of a widely used and deployed software architecture, GNU/Linux. Indic text processing is not a product or commodity. It is a capability to be added wherever text processing is present.

IndiX Focus:

Indic script processing must be a 'feature' that should be available with any international software (just as the Latin Script capability). Enabling Indic capability must start at the infrastructural level software and (then) go upto applications.

Background : Writing and Printing

Before the advent of printing, the input, storage and display of text was a seamless operation. You take a pen and write on a paper. The paper with the written information is filed for storage. The paper can be held out and read. These text operations were used for knowledge, art and information dissemination. The text operations were used for book keeping as well. Traders kept their books of accounts.

Printing separated and changed the input process. The input process consisted of type setting, arranging blocks of leaden types in the earlier days. The innovation helped in wide spread display of knowledge, art and information. But book keeping remained in the realm of non-printing text processing.

The role of information technology

Information technology has changed the way almost everything is done including text processing. Unlike printing, IT has completely changed book keeping. Within the IT enabled service, text processing has a small but very important part to play. If that part can only be done in English, it would prevent the full impact of IT enabling from reaching the common Indian.

Other implementations

Microsoft and Pango too have similar implementations where not only Indic but also Arabic, Japanese and a host of International scripts are enabled. Microsoft has proposed and implemented an Indic OpenType standards for how the Indic characters have to be grouped, reordered and presented to the lower level OpenType font. There are many reorderings in the Microsoft Typography recommendations that are not mandated by the Unicode standard. Moreover, the lower level OpenType font too requires many flags. Pango follows Microsoft Typography recommendations but is implemented as a framework on GNU/Linux and other systems.

The IndiX way

IndiX has based the grouping and reordering of characters on the Unicode standard and the minimal model of fonts. IndiX uses the ISO/IEC Technical Report 15285, which gives an operational model for transforming characters to glyphs. The most general transformation from M characters to N glyphs and the intelligent font recommended by the Technical Report 15285 have to be used with IndiX scripts. IndiX has suggested two enhancements to the model. The first is to treat certain character sequences, mainly for the consonant signs, as an indivisible subcluster. The second is a visual order for characters different from the logical order of characters. So in IndiX, shaping of Indic text from characters to glyphs is done at the lower most font level. Currently OpenType is the Intelligent font technology used for this. IndiX clearly separates page layout operations from the OpenType layout operations. The OpenType operations are for converting from M characters to N glyphs without the use of any feature flag like HALF. The IndiX OpenType fonts that are able to transform the visual syllable to the renderable glyphs are named 'Saral'.

IndiX did it!

The Indix agenda that Indic capability has to be added to the text processing components lead to the architecture where the core windowing system of the GNU/Linux (X11 Server and Client) are enhanced with Indic capability. The X11 Server converts English characters to their shapes. In Indix, the X11 Server does the same for Indian scripts. The X11 Server accesses the fonts for English. Indix X11 Server accesses the fonts for Gurumukhi. This contrasts with the Pango enhanced Linux where Indic text has to be cooked in the X11 Client backyard alone. Indic text processing capability and fonts were kept away from the X11 Server. IndiX defied this IT apartheid.

IndiX Outcome:

Now for the user, Indic text processing has become as easy as it is for English.