使用者可以使用 shell 環境變數來變更它們的語言環境設定。每一個種類都會命名一個現有的語言環境。setlocale() 功能會直接設定或查詢這些種類的設定。國際化的功能會使用這些設定,來存取適用於所要語言環境的表格。
環境變數可以間接地設定種類:當 setlocale() 將種類設定為該網站的預設值時,它會使用每一個環境變數的設定,來設定相關的種類。setlocale() 功能不會變更環境變數的設定,它只會讀取它們的設定。
您可以使用下列程序來變更預設語言環境系統範圍。針對 OpenWindows 使用者,zh_TW.BIG5 的預設值會復原為 C 語言環境。
增加或變更該行來編輯 /etc/default/init 檔案。
請將 locale 取代為 C、zh_TW.BIG5、zh_TW 或 zh_TW.UTF-8。
LANG=locale |
讓所有的使用者退出 CDE。
請鍵入下列指令:
% su # /usr/dt/bin/dtconfig -kill |
請鍵入下列指令:
% su # reboot |
專有名詞語言環境(locale)和種類(category)彼此相關,如下所示:
語言環境(locale)包括語言、領域、代碼集或其它功能的規格。 「繁體中文 Solaris」作業環境包括下列語言環境:
C- 若是 ASCII 英文環境,語言環境應該設定為 C。
zh_TW- 若是 EUC 繁體中文環境,則語言環境必須設定為 zh_TW。
zh_TW.BIG5- 若是 Big5 繁體中文環境,則語言環境必須設定為 zh_TW.BIG5。
zh_TW.UTF-8- 若是 Unicode 繁體中文環境,則語言環境必須設定為 zh_TW.UTF-8。
種類(category)是組成語言環境的一組功能。例如,字元顯示或時間/日期表示,其行為是根據語言環境(locale)。「繁體中文 Solaris」種類包括:
LC_CTYPE 是設定類別和轉換的字元類型。
LC_TIME 是設定表示日期和時間的語言環境。
LC_NUMERIC 是設定數字表示語言環境 (也用於 I/O)。
LC_MONETARY 是設定貨幣表示語言環境。
LC_MESSAGES 是設定送給使用者之訊息的語言環境。
LC_COLLATE 是設定字串的語言環境相依對照。
環境變數 LC_ALL 會明確地將所有種類都設定為相同的語言環境;它具有最高的優先權。 如果沒有設定種類或 LC_ALL,則 LANG 環境變數將決定種類設定。
關於繁體中文視窗系統輸入伺服器,按鍵組合程序會連結鍵盤上的特定按鍵與應用程式的特定動作。 您可以將應用程式的複雜動作 (例如,關閉其開啟的視窗) 與單一按鍵或 Control-H 或 Esc w c 之類的一串按鍵進行按鍵組合。
所有與 EUC 和 Big5 非 ASCII 輸入轉換相關的輸入轉換模式控制鍵指令都會設定在 /usr/lib/mle/zh_TW/keybind.dat 檔案中。 預設指令會列在繁體中文 Solaris 使用者指南第 4 章 "鍵入繁體中文輸入" 中的表格中。
您可以在這個檔案中變更按鍵的名稱,然後重新啟動 htt 輸入伺服器,來變更按鍵組合。 您可以建立或使用您自訂的 keybind.dat 檔案,如下:
在別的目錄中建立名稱為 keybind.dat 檔案的自訂拷貝。
將環境變數 MLE_PATH 設定為含有此自訂檔案的目錄路徑名稱。
啟動輸入伺服器。
然後,系統會在 MLE_PATH 中所設定的目錄中搜尋 keybind.dat 檔案,並將該檔案中的指令設定給使用者。
如果 MLE_PATH 沒有設定或沒有可用的 keybind.dat 檔案,則會使用 /usr/lib/mle/zh_TW/keybind.dat 檔案。
若要變更按鍵組合,請在按鍵組合檔案中,以新的按鍵取代預設的按鍵。您也可使用組合鍵及 ON/OFF 切換。
在 C shell 層次上,shell 指令可將每一個環境變數設定為 locale(若是繁體中文,則為 zh_TW、zh_TW.BIG5 或 zh_TW.UTF-8,若是 ASCII,則為 C ),如下:
C shell 使用者可輸入 shell 指令,如下:
system% setenv LC_TIME locale |
Bourne shell (sh) 使用者可以使用 set 或 export:
$ set -a LC_TIME $ LC_TIME=locale |
或
$ LC_TIME=locale $ export LC_TIME |
locale 若是設定為 zh_TW、zh_TW.BIG5 或 zh_TW.UTF-8,則可讓使用者的環境以繁體中文格式及文字顯示時間。 使用者也可以為工作環境定義混合的語言環境。例如,字元可以繁體中文鍵入和轉換、時間可以法文格式顯示,而訊息可以英文出現。
許多使用者都是在單一文化環境中工作。 LC_ALL 和 LANG 環境變數會設定所有種類的系統預設值。 例如,這些 C shell 指令會將所有種類的系統預設值設定為 locale。
system% setenv LC_ALL locale system% setenv LANG locale |
系統管理員或使用者可設定預設值,而且 setenv 語法可用來設計程式。
此設定會在下一次應用程式程式行中的 setlocale() 功能呼叫將種類設定為預設值:setlocale(LC_XXX"" ) 時生效。