Solaris 一般桌上管理系統環境:使用者指南

附錄 D 區性備忘錄

本章附錄將說明使用ㄧ般桌上管理系統環境(CDE)進行文字的顯示、操作、列印,以及泰語和希伯來語區性等標題。

泰語區性

Solaris 7 作業區性包括了泰語區性(簡稱 TLE)。TLE 提供本土化的泰語語言環境,讓您能夠鍵入、顯示、列印泰文。此外,TLE 還提供了一個平台,可以建立泰語的應用程式、指令及其它的功能,供 Solaris 7 和 CDE 1.3 的作業和維護之用。

以下是描述 TLE 功能的清單:

CDE 1.3 程式庫功能

TLE 包含 CDE 1.3 程式庫。此程式庫含有依據 WTT 2.0 標準所設的泰文操作(插入、刪除、選取、剪下、複製、貼上、拖曳、放下)。如需使用本程式庫設計程式的資訊,請參閱「Solaris ㄧ般桌上管理系統環境: 程式設計者指南」

泰文處理

本節說明泰語字元的處理機制。

泰文的鍵入

有時您或許需要在同一個檔案內鍵入泰文和英文。要把視窗從英文切換到泰文,或從泰文到英文,請按下 Ctrl + 空格鍵。每一個工具底部的訊息視窗均會顯示目前的輸入語言。

泰文的編輯

本節說明如何操作泰文,特別是如何執行下列作業:

字元的插入和刪除

插入和刪除泰文字元會變更文字的顯示,視字元類別能否撰寫而定。

以下的圖形顯示在 SARA_II(AV3 母音)和 YOYAK(子音)之間插入MAIHUNAKAT(AV2 母音)的順序。

圖 D–1 文字插入前的邏輯緩衝器和顯示器

Graphic

圖 D–2 文字插入後的邏輯緩衝器和顯示器

Graphic

無法使用 SARA_II 來撰寫 MAIHUNAKAT,因此必須以其所屬的儲存格顯示。

下列的範例顯示 SARA_II(AV3 母音)的刪除。

圖 D–3 文字刪除前的邏輯緩衝器和顯示器

Graphic

圖 D–4 文字刪除後的邏輯緩衝器和顯示器

Graphic

可以使用 NONU(子音類別 CONS)來撰寫 MAIHUNAKAT。因此,其將在前一個儲存格顯示。

字元換行

泰語的字之間沒有分割元(空白)。在空格字元和無空格字元的組合之下,要正確地換行泰文字元相當困難。

在 Solaris 7 TLE 中,字元自動換行是在顯示格中進行的,同時 TLE 軟體在換行時,也會顧及到無空格的字元。例如,當您在一行的最後一欄鍵入向前空格的字元時,游標會前進到下一。如果在同一個地方鍵入的是無空格字元,游標將不會前進到下一行。無空格的字元顯示在前一行中最後一個顯示格,同時游標的位置不變。

文字的選取、複製/貼上和拖曳及放下

當您選取某個顯示格時,即是選取了那個格子內所有的字元(有空格與無空格的字元皆然)。

編輯程式視窗內的游標移動 (dtpad

泰語多重的顯示等級看起來似乎會引起 dtpad (文字編輯程式)視窗內的游標移動不尋常。實際上,游標只在顯示格之間移動。不過,由於一個顯示格內的泰文字元常常不只一個,因此事實上游標並不在顯示格之間移動。

終端機視窗內的游標移動 (dtterm

終端機視窗內的游標移動,和使用文字 widget(如 dtpad)在泰語 CDE 工具內編輯文字的情形略有不同。 當您在終端機視窗內移動游標時,如果一個顯示格內只有一個字元,游標將在格子內被選取。如果顯示格內的字元不只一個,則整個顯示格均會被選取。

您可以用包含在本版次的四種泰文字型顯示泰文和英文字元。這些字型列於表 D–1表 D–2

泰文字型

您可以用包含在本版次的四種泰文字型顯示泰文和英文字元。這些字型列於表 D–1中。

表 D–1 Solaris 7 TLE 字型 (可縮放的)

字體 

樣式 

字型名稱 

Angsana 

標準體 

-monotype-angsa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

粗體 

-monotype-angsab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

斜體 

-monotype-angsai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

粗斜體 

-monotype-angsaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

Browalia 

標準體 

-monotype-browa-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

粗體 

-monotype-browab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

斜體 

-monotype-browai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

粗斜體 

-monotype-browaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

Cordia 

標準體 

-monotype-cordia-medium-r-normal--*-*-*-*-m-*-tis620.2533-0

 

粗體 

-monotype-cordiab-bold-r-normal--*-*-*-*-m-*-tis620.2533-0

 

斜體 

-monotype-cordiai-medium-i-normal--*-*-*-*-m-*-tis620.2533-0

 

粗斜體 

-monotype-cordiaz-bold-i-normal--*-*-*-*-m-*-tis620.2533-0

   

表 D–2 Solaris 7 TLE 字型(固定寬度)

字體 

樣式 

字型名稱 

Gothic Normal 

12點 

-logic-gothic-medium-r-normal--12-120-75-75-c-80-tis620.2533-0

 

14點 

-logic-gothic-medium-r-normal--14-140-75-75-c-90-tis620.2533-0

 

16點 

-logic-gothic-medium-r-nor mal--16-160-75-75-c-80-tis620.2533-0

 

20點 

-logic-gothic-medium-r-normal--20-200-75-75-c-100-tis620.2533-0

 

24點 

-logic-gothic-medium-r-normal--24-240-75-75-c-100-tis620.2533-0

Gothic Bold 

12點 

-logic-gothic-bold-r-normal--12-120-75-75-c-100-tis620.2533-0

 

14點 

-logic-gothic-bold-r-normal--14-140-75-75-c-110-tis620.2533-0

 

16點 

-logic-gothic-bold-r-normal--16-160-75-75-c-80-tis620.2533-0

 

20點 

-logic-gothic-bold-r-normal--20-200-75-75-c-120-tis620.2533-0

 

24點 

-logic-gothic-bold-r-normal--24-240-75-75-c-120-tis620.2533-0

Gothic Italic 

16點 

-logic-gothic-medium-i-normal--16-160-75-75-c-80-tis620.2533-0

   

列印

本節說明如何從矩陣印表機和 CDE 1.3 列印泰文。如需獲得系統支援的點矩陣印表機清單,請參閱「Solaris 2.6 泰語增補:版次概述」附錄 C 一章。

從 CDE 工具列印

如果您的印表機安裝有 Angsana UPC 字型,您就可以從 CDE 1.3 的任何工具進行列印(Solaris 7 TLE 並未提供字型)。

在點矩陣印表機上設定泰文列印

本章節內容是假設您的印表機已按照列於「Solaris 2.6 泰語增補:版次概述」中的附錄 C “印表機廠牌、機型、和代碼 ID“ 中的 WTT 2.0 標準來註冊。

如果您設定系統所使用的印表機是按照 WTT 2.0 標準註冊,請利用 SunOS 5.6 文件中的「使用者帳戶、印表機、郵件的設定」說明設定印表機。

一旦您的印表機設定完畢,請按照下列步驟啟動泰語字元的列印:

  1. 鍵入cd /usr/lp/interfaces

  2. 編輯您以剛剛設定的印表機命名的檔案。

    把下面一行的lp.cat 變更為lp.filter

    if [! -x "${LPCAT:=${LOCALPATH/lp.cat"]
  3. /usr/lib/lp/bin中建立一個名為lp.filter的 shell 程序檔,它會藉由 lp.cat 以管路輸出並輸入印表機的工作。

    lp.filter 程式應具下列的語法。請參閱 thaifilter Thai Language Supplement for Solaris 2.6: Release Overview,「Solaris 2.6 泰語補增:版次概論」附錄 D「手冊頁」的 thaifilter (1)線上援助頁,上面有 thaifilterthai_filter_command 的語法。

    thai_filter_command | lp.cat

泰文的列印

本節說明如何使用 thaifilter(1) 列印公用程式和印表機切換表,您在列印泰文時可能用得到。

thaifilter(1)公用程式的使用

thaifilter(1) 程式是一個過濾器,能將泰文轉換為三個層級:

這個系統稱之為三級分類。檔案轉換為三級分類有下面兩個主要的功用:


註解 –

有些比較新式的印表機買來時已安裝有三級分類軟體。因此,thaifilter(1) 具有一個可以把三級分類關閉的 -x 選項。


thaifilter(1) 的線上援助頁可見於 TLE 2.6 軟體,另外在「Solaris 2.6 泰語增補: 版次概述」附錄 D「手冊頁」中的列印表單。

印表機軟體的設定

針對泰文的列印,WTT 2.0 標準能辨識下列名稱與慣例:

Solaris 7 TLE 提供了這 17 個代碼切換表,可以切換不同的印表機代碼,使符合 TAC11x11.COD 標準。列於表 D–3的轉換表儲存在/usr/lib/lp/files的目錄中。

表 D–3 代碼轉換表

代碼轉換表 

印表機 ID 使用的代碼 

TAC11x10.COD 

10 

TAC11x12.COD 

12 

TAC11x13.COD  

13 

TAC11x14.COD 

14 

TAC11x15.COD  

15  

TAC11x16.COD  

16  

TAC11x17.COD 

17  

TAC11x18.COD  

18 

TAC11x19.COD  

19 

TAC11x20.COD  

20 

TAC11x21.COD  

21  

TAC11x22.COD  

22 

TAC11x40.COD  

40 

TAC11x41.COD  

41 

TAC11x42.COD  

42 

TAC11x43.COD  

43  

TAC11xAA.COD  

AA 

如果您的印表機並未使用上列的印表機代碼轉換表,請參閱以下的說明,建立您自己的轉換表。

新印表機代碼轉換表的建立

印表機轉換表用來將列印說明轉換成 TIS 988-2553 的格式,這個格式是WTT 2.0 的預設列印格式。Solaris 7 TLE 包含了列於 WTT 2.0 標準中的代碼轉換表。

假如您使用的印表機用的不是 TIS 988-2553 的格式,且所有的代碼轉換表皆無法使用,您就需要建立一個自訂的轉換表。本節將針對如何建立新的印表機切換表加以說明。

切換表的語法

下面是一個代碼轉換檔案的例子:

-- -- -- -- TN -- !  TAC11x10.COD     16 AUG 1991 00 

01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 

18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 

2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 

46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 

5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 

74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 

3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F A1 

A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8 

B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF 

D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA 3F 3F 3F 3F DF E0 E1 E2 E3 E4 E5 E6 

E7 E8 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB 3F 3F 

3F FF ! End of TAC11x10.COD

代碼轉換表的第一行所用的語法如下:

CC LG UM EX TN SP     !  comment

若某個由雙字元組成的欄位沒有用到,它必須以兩個破折號(--)來代替。第一行各欄位的說明見於表 D–4

表 D–4 代碼轉換表

欄位 

說明 

CC 

TIS 988-2553 的組合代碼,例如 SaraI 和 MaiEk 

LG 

線條圖形 

UM 

SaraAm 和 Nikhahit 的組合代碼 

EX 

升部延伸  

TN 

泰語數值 

SP 

TIS 988-2553 中未定義的特殊代碼 

! comments 

您的任何註釋。在 WTT 2.0 標準中,本欄位包含檔名和日期的資訊。註釋之前必須有 "!" 符號。 符號。 

切換檔案的中間部份有 16 行,一行有 16 個代碼,總共是 256 個代碼。這些代碼代替了 TIS 988-2553。以下顯示的是 TIS988-2553 代碼:

-- -- -- -- TN -- !  TAC11x11.COD     16 AUG 1991 00 

01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 

18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 

2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 

46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 

5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 

74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 

8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 9A 9B 9C 9D 9E 9F A0 A1 

A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF B0 B1 B2 B3 B4 B5 B6 B7 B8 

B9 BA BB BC BD BE BF C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF 

D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF E0 E1 E2 E3 E4 E5 E6 

E7 E8 E9 EA EB EC ED EE EF F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD 

FE FF ! End of TAC11x10.COD  Note: There is no conversion in this table

轉換表的最後一行是另一個註釋,前面有一個 "!" 符號。WTT 2.0 轉換表的結束行如下:

! END OF filename

希伯來語區性

Solaris 7 的作業環境包括了希伯來語環境。本節將針對希伯來語環境的主要功能做一說明。

希伯來文字的鍵入

有時您或許需要在同一個檔案內鍵入希伯來文和英文。如果要在英文和希伯來文輸入模式之間做切換的話,請按 Ctrl+t 鍵。每一個工具底部的訊息均會顯示目前的輸入語言。

希伯來文字的編輯

本節說明如何操作希伯來文字,特別是如何在邏輯的編輯模式下操作游標。


註解 –

輸入文字後,您可能會發現文字行一開始的位置有一個殘留的游標影像。這個殘留的影像並不會影響整體的功能運作。您可以繼續輸入資料。


字元的插入

當文字插入點在希伯來文和英文之間的邊界時,會產生模稜兩可的情況。可以反映兩個位置的分割游標,能解決這種模稜的情況。它將顯示為 ab|DC| ,其中 “|” 代表的是每一個游標。


註解 –

當您按下 Home 鍵或 End 鍵時,分割游標可能無法正確地顯示。


希伯來文字的列印

希伯來文的列印是由一組過濾器執行的。希伯來語區性的套裝軟體-SUNWheu 應該安裝在印表機連接的那台伺服器及用戶端電腦上。

已安裝的希伯來文過濾器

下列的過濾器包含在希伯來語區性的套裝軟體中。

heb2ps

heb2ps 過濾器會將任何文字轉換為 postscript,並且將希伯來文字型連同其它字型一起送到印表機處。

hebl2r

當您用 hebl2r 過濾器列印時,所輸入的文字並沒有重新排列次序。文字會被格式化以放進有 80 欄的紙張大小。這樣對列印內含希伯來文字的英文文件頗有幫助。

hebr21

當您用 hebr21 過濾器列印時,所有的文字均會被翻轉,同時印表機的輸出會向右對齊。

hebtxt

當您以 hebtxt 過濾器列印時,文字會以希伯來文和英文的方向排序,同時印表機的輸出會向右對齊。

從指令行使用希伯來文過濾器

如果要從指令行列印,請用 hebtxt 過濾器。lp 的列印指令為 lp -T hebtxt -d printer_name

dt 應用程式中列印

dt 配置檔中的列印動作欄位應該加以修改,加進希伯來文字過濾器。以 dtmail 應用程式為例,/usr/dt/appconfig/types/he/dtmail.dt 檔案中的列印動作應為:

ACTION Print  

{

LABEL           Print 

ARG_TYPE        DTMAIL_FILE   

TYPE            COMMAND

WINDOW_TYPE     NO_STDIO

EXEC_STRING     sh -c ' \                                 

                dtmailpr -p -f %(File)Arg_1% | 

                /usr/lib/lp/postscript/convert_text -inputTextMode 

                -text_mode_implicit -outputTextMode text_mode_visual 

                -lineWidth 80 -inputLayoutDirection left_down

                -outputLayoutDirection right_down| mp -A4 -L he| dtlp 

                -u %(File)Arg_1%;'}


上面列的 convert_text 參數將會從右到左地列印向右對齊的文字。若要從左到右地列印向左對齊的文字,請以 -lineWidth 80 取代前一個參數。