ULTRIX Guide to Developing International Software

Order Number: AA-LY26B-TE

This document, "ULTRIX Guide to Developing International Software" (June 1990, for ULTRIX Version 4.0 or higher), is a guide for experienced ULTRIX application programmers and translators.

It explains how to internationalize software, meaning to design or adapt programs to meet the requirements of multiple national languages, local customs, and specific character sets. The guide differentiates this from localization, which is the process of establishing specific language and cultural data for a program's run-time environment.

The ULTRIX internationalization solution relies on several key components:

  1. Message Catalog System: This system allows program messages to be stored externally in message catalogs, separate from the program logic. Tools like extract, strextract, strmerge are used to pull strings from source code, trans assists with translation, and gencat compiles these into message catalogs. Library routines such as catopen, catgets, and catclose enable programs to dynamically retrieve messages in the appropriate language at runtime.
  2. Program Localization: This involves the announcement mechanism, primarily the setlocale library routine and the LANG environment variable, which inform the system about the program's language, territory, and codeset requirements. Different categories (LC_ALL, LC_COLLATE, LC_CTYPE, LC_NUMERIC, LC_TIME, LC_MONETARY) control specific aspects of cultural data, allowing programs to dynamically adapt their behavior (e.g., date/time formats, currency symbols, character handling, sorting rules).
  3. Language Support Databases: These databases hold various language-dependent entities, freeing programs from hardcoded national language dependencies. They are created from source files compiled by the ic international compiler and include definitions for:
    • Codesets: Valid characters and their properties.
    • Property Tables: Character classifications (e.g., uppercase, lowercase, punctuation).
    • Collation Tables: Define character sorting sequences, accommodating different cultural sorting rules (e.g., one-to-one, one-to-two, two-to-one character mappings).
    • String Tables: Contain cultural strings such as date and time formats, "yes"/"no" responses, and currency symbols.
    • Conversion Tables: Specify character conversions, such as uppercase to lowercase and vice-versa.

In essence, the document provides the tools, routines, and guidelines necessary for developers to create software that appears to users as if it were specifically designed for their native language and local customs, reflecting appropriate cultural data and character sets.

AA-LY26B-TE
June 1990
61 pages
Quality

Original
2.1MB

Site structure and layout ©2025 Majenko Technologies