應用程式的關鍵性觀念為程式的語言環境。是一個明確的模型以及原生語言環境的定義。語言環境的概念是明確定義的,並包括在「ANSI C 語言」標準的程式庫定義中。
語言環境是由一些種類所組成,其中有國家相依性的格式或其他規格。程式的語言環境可定義自身的字碼集、資料和時間的格式慣例、幣制慣例、十進制的格式慣例,以及分頁 (排序) 順序。
語言環境可以由基本語言所組成,該 使用的國家(地區),以及選擇性的字碼集。通常會假設字碼集。例如,德語為de,為德國的縮寫,而瑞士德語為de_CH,CH為瑞士邦聯的縮寫。它可容許國家間的特定差異,如貨幣單位記號。
超過一個以上的語言環境可與一種特定語言相關聯,且可容許區域性的差異。例如, 一位在美國說英語的使用者可以選取en_US語言環境(美式英語),而另一位在英國說英語的使用者可以選取en_GB(英式英語)。
通常語言環境名稱是藉由LANG環境變數來指定。語言環境種類隸屬於LANG,但是可以個別設定,假使其置換LANG。若是即設定該 LC_ALL運算元,其不但置換LANG,同時也置換所有個別的語言環境種類。
語言環境命名慣例為:
language[_territory][。 codeset] [@modifier]
其中雙字母的 language字碼是來自 ISO 639,雙字母的 territory 字碼是來自 ISO 3166,codeset是使用在語言環境中的字碼集名稱,以及modifier是區分沒有修飾符號的語言環境之特性名稱。
所有 Solaris 產品的語言環境都以 US-ASCII 字碼值保存「可攜字元集」的字元。
若要獲得更多關於「可攜字元集」的資訊,請參閱“X/Open CAE 規格:系統介面定義, 第 5 版” (ISBN 1–85912–186–1)。
單一語言環境可以擁有一個以上的語言環境名稱。例如, POSIX與C相同。
完整的 Solaris 語言環境擁有所有列出的功能以及使用相關語言的本土化系統訊息。部份語言環境沒有安裝本土化的訊息。Solaris 環境中的所有語言環境都可顯示本土化訊息,可為已安裝的相關語言提供本土化訊息。例如,下列語言環境可以是部份或完整語言環境。
de_DE.ISO8859–1
de_DE.ISO8859–15
de_DE.UTF-8
de_AT.ISO8859–1
de_AT.ISO8859–15
de_CH.ISO8859–1
當您使用 Language CD 安裝德文訊息翻譯時,上述所有的語言環境都會變成完整語言環境,因為它們都可存取已完全翻譯的桌上管理系統。Language CD 包含下列語言以及語言環境的訊息翻譯:
德文
法文
西班牙文
瑞典文
義大利文
日文
韓文
簡體中文語言環境
繁體中文語言環境
Software CD 提供了所有的部份語言環境。Language CD 提供了訊息翻譯。
所有英文語言環境也是完整的語言環境,並可取得自 Software CD。
不同的文化通常使用不同的慣例來表示日期和時間、格式數字、字詞分割和引用資料。 語言環境會在系統中決定下列項目的行為:
文字資料的編碼與處理。
識別資源檔案的語言與編碼。
文字字串的描繪與版面配置。
用在用戶端之間文字通訊的交換文字。
選取輸入方法(意即產生哪一個字碼集)以及文字資料的處理。
特定文化的字型與圖示檔案。
動作與檔案類型
使用者介面定義(UID)檔案。
日期與時間格式。
數值格式。
貨幣格式。
排序順序。
語言環境的特定正規表示式處理。
資訊以及診斷訊息的格式,與互動回應。
Solaris 環境會將和語言及文化相關的資訊與應用程式分隔開來,並將其儲存在應用程式之外。如此將不再需要針對每個市場來翻譯、重寫或重新編譯應用程式。進入新市場的唯一需求就是將外部資訊本土化為當地的語言和慣例。
語言環境的種類如下所示:
控制字元處理功能的行為。
指定日期和時間的格式,包括月份名稱、一星期的天數,以及一般完整和縮寫的表示法。
指定幣制格式,包括語言環境的貨幣符號、以千計分隔符號、記號位置、分數數字等。
指定十進制分割元(或基數字元)、以千計分隔符號以及群組化。
指定字元排序順序,以及語言環境的正規表示式定義。
指定本土化訊息、語言環境的肯定、否定回應 (yes 和 no 字串和表示式)的語言要用哪種語言。
指定提供關於語言描繪資訊的版面配置引擎。語言描繪(或文字描繪)是由文字具體化與定向性所組成。