12.07.2015 Views

free openSS

free openSS

free openSS

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

28 ❘ FREE/OPEN SOURCE SOFTWARE: LOCALIZATIONdiscussion and to build the glossary database from the decisions made collectively. Sometimes thetranslator needs to run the program to see the context surrounding the message, in order to find aproper translation. At other times the translator needs to investigate the source code to locate conditionalmessages, such as error messages. Translating each message individually in a literal manner, withoutrunning the program, can often result in incomprehensible outputs.Like other FOSS development activities, translation is a long-term commitment. New messages are usuallyintroduced in every new version. Even though all messages have been completed in the current version,it is necessary to check for new messages before the next release. There is usually a string <strong>free</strong>ze periodbefore a version is released, when no new strings are allowed in the code base, and an appropriate timeperiod is allocated for the translators. Technical aspects of the message translation process are discussedon page 45.GNU/Linux Desktop StructureBefore planning to enable a language in GNU/Linux desktop, a clear understanding of the overview of itsstructure is required. GNU/Linux desktop is composed of layers of subsystems working on top of one another.Every layer has its own locale-dependent operations. Therefore, to enable a language completely, it isnecessary to work in all layers. The layers, from the bottom up, are as follow (See Figure 1):1.2.3.The C Library. C is the programming language of the lowest level for developing GNU/Linuxapplications. Other languages rely on the C library to make calls to the operating system kernel.The X Window. In most UNIX systems, the graphical environment is provided by the X Windowsystem. It is a client-server system, where X clients make requests to X server and receive eventsfrom it across the network connection (or through a local inter-process communication channel)based on X protocol. A library called X Library (Xlib) encapsulates this protocol by a set ofapplication programming interfaces (API), so that X clients can do everything in terms of functioncalls. Due to its liberal license terms, which allow even commercial redistributions, there havebeen several versions of X Window in the UNIX market. For GNU/Linux, XFree86 is the majorcode base, although new releases of some major distributions are now migrating to the newlyforked X.org released in April 2004. All forks differ mainly in X server implementation and someextensions. But the X protocol and Xlib function calls are still standardized.Toolkits. Writing programs using the low-level Xlib can be tedious as well as a source ofinconsistent GUI when all applications draw menus and buttons by their own preferences. SomeFigure 1GNU/Linux Desktop Structure and Internationalization

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!