佛典共用造字集的整理
莊德明中央研究院資訊科學研究所研究助理
摘 要
國內的中文電腦軟體大多採用五大碼,然而五大碼並不足以應付佛典用字,所以「缺字」便成為佛典電子化的一大困擾。缺字必須「造字」後,方可呈現;可是五大碼的造字空間不足,使得大家終要面臨往後將會無字可用的窘境。
本文首先說明文字、字形和字體間的差異,並將討論的重點集中在文字和字形。一個字可以有好幾個字形,五大碼除了少數幾個字形,如「藥」、「葯」等同時收錄外,通常只收錄一個字形,這些未收錄的字形於是也就成為缺字。至於字形和字形間的關係,則可透過字碼及形碼來描述。
缺字在還未造字之前,除了將其當作圖形外,是無法在電腦上呈現,為了討論方便,本文特別介紹字根和部件,並以字根式來表達缺字。若由文字與字形的觀點來看,缺字可以分成五類,其中第一、三類是屬於異體缺字,這類缺字若能妥善處理,並作適當的取捨,必能增加共用造字集的使用效益。
在缺字的整理上,我們使用關聯式資料庫來管理缺字,最後再將缺字分類排序後印出,以作進一步的討論,待大家都無異議後,再開始編碼,轉換造字檔,編輯輸入法,並將這些缺字登錄在中文字形資料庫中。
中華民國八十五年六月十三日
中央研究院資訊科學研究所文獻處理實驗室
壹、文字、字形與字體
文字(Chararcter)是表達一種(或一群)概念的名相,一個文字可以有許多不同的字形(Glyph),而字形區別的關鍵則在於它的組成結構。印刷體的字形有一定的設計規範,遵從同一設計規範製作的一群字屬於同一種字體。字體區別的關鍵在於設計的規範,如大小、粗細、疏密、以及一些特殊裝飾的邊角等等[一]。本文所指的字形、字體和電腦上的字型(如華康中楷體字型)是不相同的。表格一以「藥」、「祕」及「饑」三個字為例說明文字、字形與字體間的關係。
文字 |
字形(華康中楷體字型) |
字形(華康細明體字型) |
藥 |
藥(C3C4)、葯(DFD3) |
藥(C3C4)、葯(DFD3) |
祕 |
祕(AFA6)、秘(AFB5) |
祕(AFA6)、秘(AFB5) |
饑 |
饑(C4C8)、飢(B0A7) |
饑(C4C8)、飢(B0A7) |
表格 一:文字與字形(五大碼)
表格一中,「藥」字有四個字形「藥」、「葯」、「藥」、「葯」,卻只有兩個內碼C3C4、DFD3,而且也無法由這兩個內碼看出它們是同一個字。若要從內碼來區分文字和字形,可以利用字碼和形碼。例如由字形「藥」、「葯」、「藥」、「葯」中,選用字形「藥」以代表「藥」字,那麼就可以用「藥1」、「藥2」、「藥3」、「藥4」分別表示字形「藥」、「葯」、「藥」、「葯」;此時,「藥」即為字碼,「藥1」、「藥2」、「藥3」、「藥4」中的1、2、3、4即為形碼。「饑」字的情形亦然,然而「祕」字就稍有不同。表格一中,「祕」字有三個字形「祕」(「祕1」)、「秘」(「祕2」) 、「祕」(「祕3」),至於「秘」和「秘」(「祕2」) 只是字體上的不同。
若要進一步區分字形和字體,也可以在形碼外,再加上體碼。若體碼1表示楷體,2表示細明體,則「秘」和「秘」可進一步表示為「祕2,1」、「祕2,2」。採用字碼、形碼及體碼,表格一可改寫成表格二:
文字 |
字形(華康中楷體字型) |
字形(華康細明體字型) |
藥 |
藥(藥1,1)、葯(藥2,1) |
藥(藥3,2)、葯(藥4,2) |
祕 |
祕(祕1,1)、秘(祕2,1) |
祕(祕3,2)、秘(祕2,2) |
饑 |
饑(饑1,1)、飢(饑2,1) |
饑(饑3,2)、飢(饑4,2) |
表格 二:文字與字形(字碼、形碼與體碼)
貳、字根與部件
漢字由部件(Component)構成,此構成是有規律的,可歸納為簡單的制式規則。在交大字根系統中,將漢字字形以橫連(*)、直連(/)及包含(@)的方式分解,得到496個基本部件,稱為字根 [二]。這群字根和組合的規則(亦即分解的規則)可以組成48713個漢字。
文獻處理實驗室自82年9月起,即著手建立中文字形資料庫,目前已將林樹字集(參考[三])的9122個字形(其中有8529個字,593個參考字形)輸入電腦,並將交大字根系統的496個字根簡化成424個字根。字形分解的過程中,還產生了631個中間字根(以下簡稱部件)。目前分解的字形是以標準楷體為主,以下就用「藥」字為例來說明字形的分解,結果詳見表格三。
步驟 |
字碼 |
形碼 |
分解 |
部件一 |
部件碼 |
部件二 |
部件碼 |
部件三 |
部件碼 |
1 |
藥 |
1 |
直連 |
|
1 |
樂 |
1 |
||
2 |
|
1 |
字根 |
||||||
3 |
樂 |
1 |
直連 |
|
1 |
木 |
1 |
||
4 |
|
1 |
橫連 |
|
1 |
白 |
1 |
|
1 |
5 |
木 |
1 |
字根 |
||||||
6 |
|
1 |
字根 |
||||||
7 |
白 |
1 |
直連 |
|
1 |
日 |
1 |
||
8 |
|
1 |
字根 |
||||||
9 |
日 |
1 |
字根 |
||||||
10 |
藥 |
2 |
相等 |
葯 |
1 |
||||
11 |
葯 |
1 |
直連 |
|
1 |
約 |
1 |
||
12 |
約 |
1 |
橫連 |
|
1 |
勺 |
1 |
||
13 |
|
1 |
直連 |
|
1 |
|
1 |
||
14 |
|
1 |
字根 |
||||||
15 |
勺 |
1 |
包含 |
|
1 |
|
1 |
||
16 |
|
1 |
字根 |
||||||
17 |
|
1 |
字根 |
表格 三:「藥」字的分解過程
字形分解,若由檢索來考量,每次應以兩個部件為宜,如「藥」分解成「/樂」,而不分解成「//木」,這樣往後就可以用部件「樂」檢索出「藥」字;然而大部分的部件,如「」等,都需要額外造字,為了減少部件造字的數目,就規定字形或部件的分解最多不得超過三個部分,如「」分解成「*白*」。假設目前的字集只有「藥」一個字,那麼表格三裡頭所包含的字、字形、部件及字根如表格四:
字 | 藥 |
字形 | 藥 葯 |
字根 | 木 日 |
部件 | 樂 白 約 勺 |
表格 四:「藥」字的相關字形、字根與部件
分解林樹字集所得的424個字根中,有245個是五大碼中已經定義的字形,如「一」、「口」、「門」等;另外還有179個需要額外造字,如「」、「」、「」等。至於部件的個數原為631個,然而林樹字集中有33個字,如「」、「」、「」等,也常用作其他字的部件,我們也一併收錄在部件集中,所以目前部件的個數應為664個。這些部件中只有91個是五大碼中已經定義的字,如「隹」、「夌」、「兟」等,另外還有573個需要再造字。這些需要造字的字根和部件,目前可以依照筆畫、起筆或是輸入法來查詢。
參、缺字的表達
表格三字形「藥」的部分分解步驟可用表格五的組合式來表達:
字形 |
步驟 |
字根或部件的組合式 |
1 |
/樂 | |
藥 |
3 |
/(/木) |
4 |
/((*白*)/木) | |
7 |
/((*(/日)*)/木) |
表格 五:字形「藥」的字根或部件的組合式
表格五步驟7的組合式僅包含字根,可稱為字形「藥」的字根式,即「藥=/((*(/日)*)/木)」。任何一個字形,雖然都可用字根式表達,但要由字根式反推出字形就不如部件那麼容易。下文若有用到字形的組合式,將會以部件為主,以便閱讀,並且仍稱為字根式或者直接稱為字形。
在目前的中文系統,電腦上的缺字在還沒有造字之前,是無法呈現的,若要應用電子文件來討論缺字,字根式倒也不失為一個可行的方法。
肆、缺字的分類
缺字在目前的處理上可以分為五類,若以西蓮淨苑344個缺字為分析對象,各類所佔的比率及相關的例子如表格六中所列。
類別 |
字形 |
個數 |
比率(%) |
1 |
「口*兄」(咒)、「君/羊」(群)、「@回」(迴) |
236 |
69 |
2 |
「目*侯」、「少/兔」、「門@艮」 |
89 |
26 |
3 |
「任/几」、「馮/几」(「任/几」2) |
4 |
1 |
4 |
、、、、 |
14 |
4 |
5 |
拼(拼) |
1 |
- |
表格 六:缺字的分類
第一類缺字如「咒」字的兩個字形「口*兄」與「咒」,字形「口*兄」為缺字,另一個字形「咒」(A947)則在五大碼中已有定義。第二類缺字如「目*侯」字,在五大碼中並沒有定義。第三類缺字如「任/几」字的兩個字形「任/几」、「馮/几」在五大碼中都沒有定義。第四類缺字如「」、「」、「」等,雖然在五大碼中沒有定義,其字形本身卻是字根或部件。第五類缺字如「拼」(內碼和「拼」同),「拼」為華康細明體字型,而「拼」為華康楷體字型,兩者在五大碼中都有定義;這一類的缺字出現在其他缺字集的還有「為」(為)、「真」(真)、「飽」(飽)等字形。
這五類缺字中,第二類缺字由於在五大碼中並無其他可用的字形,必須優先造字;第四類缺字的字根和部件本身就是造字,當然不需要再造字;第五類缺字可在電腦中選擇適當的字型呈現即可,也不必再造字。至於第一類及第三類缺字是屬於異體缺字,在西蓮淨苑的缺字集中,合佔百分之七十,這類缺字在處理上的問題最多,要是能夠妥善處理,必能增加共用造字集的使用效益,這也是本文探討的重點。
異體缺字是否要再造字,每個單位不盡相同,如字形「君/羊」,可能某一單位以「群」代替,另一單位仍然造字處理。以往由於大家各別造字,所以才會有處理上的不同,現在既然想要使用同一個造字集,應該採取一致的取捨標準。為了往後討論方便,這些缺字應該再作進一步的分類。異體缺字的形成或由字根、位置、筆勢、古今的不同,或由累增而形成,或是刻錯[四],相關的例子如表格七。
類別 |
說明 |
字形 |
1 |
字根 |
「厂@尌」→「廚」、「/龍」→「寵」 |
2 |
位置 |
「山/夆」→「峰」、「*」→「鄰」 |
3 |
筆勢 |
「/牛」→「犁」、「去*」→「劫」、「乃/木」→「朵」 |
4 |
古今 |
「屯*」→「村」、「*苗」→「貓」、「石*」→「礙」 |
5 |
累增 |
「/果」→「果」、「*吝」→「吝」、「蕊/木」→「蕊」 |
6 |
錯字 |
「*且」→「但」 |
表格 七:異體缺字的分類
表格七異體缺字的分類,僅供大家參考,至於是否要依照這些類別來決定異體缺字的取捨,還有待大家的討論。
伍、缺字的整理
在漢字方面(不包括符號),目前收到各單位提供的缺字總數共 2663個,分別是:(按造字數排列)
- 佛光山1470個(禪藏及佛光大辭典等)。
- 佛教電腦資訊功德會528個。(大般若經及丁福保佛學大辭典等)
- 西蓮淨苑344個(律學辭典等)。
- 摩訶工作室215個。(大正藏第九冊)
- 妙雲蘭若106個。(妙雲集)
另外中華佛教百科文獻基金會的缺字正在整理中。整理缺字時,應該注意下列問題:
- 檢索。每個缺字除了編號外,應該加入部首、筆畫、筆順,以方便查閱。筆畫可再分成總筆畫及扣除部首的筆畫,筆順則再分成首筆、次筆及末筆。筆畫除了檢索外,也是編碼的依據。
- 注音。便於往後編輯輸入法。
- 異體字。對於異體缺字而言,異體字可用來判斷這個字是否該造,還是用異體字取代即可。
- 內碼。假使該字已經造過字,透過內碼,不但可以取得該造字的點陣字型,也可以在給定新碼後,當作往後轉碼的依據。
- 使用。缺字集在合併後,應該保留各單位的用字資訊,以便統計每個單位.用了那些字,某一個字有那幾個單位使用過。
- 日期。缺字的整理過程中,各單位的缺字將會陸續送來,記錄缺字的登錄日期及修改日期,有助於往後缺字的篩選。
為了缺字整理上的方便,我們採用個人電腦上的關聯式資料庫來管理缺字,並將缺字的屬性記錄在工作表上,表格八以缺字「金*本」及「犮/皿」為例來說明這個工作表中各個欄位的功用。
編號 |
字 |
內碼 |
部首 |
筆畫 |
注音 | |||||||||
總 |
1 |
2 |
3 |
4 | ||||||||||
1 |
金 |
13 |
5 |
ㄅㄛ |
||||||||||
2 |
皿 |
10 |
5 |
ㄅㄛ |
筆順 |
異體字 |
佛光山 |
資訊功德會 |
西蓮淨苑 | ||||||||
首 |
次 |
末 |
1 |
2 |
3 |
4 |
編號 |
內碼 |
編號 |
內碼 |
編號 |
內碼 |
4 |
5 |
2 |
缽 |
2 |
634 |
FA47 |
277 |
94CB |
120 |
FAF6 | ||
2 |
4 |
2 |
缽 |
1 |
321 |
FBE6 |
112 |
916A |
85 |
9BE4 |
摩訶工作室 |
妙雲蘭若 |
佛教百科 |
日期 | ||||
編號 |
內碼 |
編號 |
內碼 |
編號 |
內碼 |
登錄 |
修改 |
118 |
94CB |
88 |
85/06/12 |
85/06/12 | |||
85/06/12 |
85/06/12 |
表格 八:缺字整理表
表格八中的欄位「編號」有兩種,一種是該缺字在原有單位的編號,如「金*本」在佛光山造字集的編號為634;另一種是本次整理時所給的編號,如「金*本」的編號為1,這種編號是依缺字處理的先後來給定。欄位「字」暫時不須記錄,待內碼確定,造完字後,即可自動記錄。欄位「內碼」也有兩種,一種是該缺字在原有單位的內碼,如「金*本」在佛光山造字集的內碼為FA47;另一種是佛典造字集重新編定的內碼,須等內碼確定後才記錄;記錄這兩種內碼,事實上就是在作內碼對照表,以便日後轉碼。欄位「筆順」包括起筆、次筆及末筆,其代碼意為「1(點)」、「2(橫)」、「3(直)」、「4(撇)」、「5(捺)」、「6(曲)」、「7(鉤)」、「8(口)」、「9(挑)」。
欄位「注音」及「異體字」最多可以各記錄四個,然而異體字可能也會是缺字,以致無法直接記錄,在此再分成兩種情形處理:一種為該異體字已出現在本表,那就直接記錄本表的編號即可,如「金*本」的異體字有「缽」及「犮/皿」,「犮/皿」為缺字,並且出現在本表中,是故記錄其編號2即可;假使異體字既是缺字又未出現在本表,則以「X」作記以示區別。至於各單位的編號及內碼,是用來記錄缺字的使用狀況,若是已經使用,則記錄編號;若是已經造過字,則記錄內碼。最後一個欄位「日期」,分為登錄日期和修改日期;第一次登錄時,兩者同為登錄日期,往後若有修改,只須反映修改日期即可。
待這些缺字整理告一個段落,我們會將上述的缺字整理表分類排序後印出,提供給大家參考,直到大家都無異議後,才開始編碼,轉換造字檔,編輯輸入法,並將這些造字登錄在中文字形資料庫[一]。為了使缺字整理的工作能夠進行的更順利,在此懇求各單位利用本文最後一頁的附表提供缺字資料。這個附表有下列幾點需要補充:
- 筆畫:先記錄總筆畫,再記錄扣除部首的筆畫。
- 筆順:順序分別為首筆、次筆及末筆。
- 注音:記錄該字的所有讀音(有幾個寫幾個)
- 替代字形:該缺字若在原書可用其餘字形(一個或一個以上)取代,請一併提供這些取代字形。這項資料最為重要,因為除了原有單位可根據原書判定是否可以用其他字形取代外,其他人實在很難下定論。如「女*市」的替代字形為「姊」。
- 標準字:該缺字若有好幾個替代字形,請選取其中一個為標準字以定義字碼。如由字形「金*本」、「犮/皿」中選取「金*本」為標準字。
附表中所需的資料,應該在查字典時就可以一併記錄,若資料不齊全,我們勢必還得花時間去查字典,只怕會再次拖延造字集推出的時間。
陸、結語
自1994年10月起,佛教界即開始呼籲應該共用一個造字集,以免各自造字而造成電子文件流通上的不便。如今一年半已經過去,缺字問題的解決可能也比以往更加急迫。
佛典電子化的過程中,當然儘可能保留原書字形以求真求實,然而受限於五大碼造字空間不足的事實,常又得考量往後可能無字可用的窘境。以往的討論由於缺字統計資料的不足,總是沒有具體的結論,這次我們合併各單位的缺字,並加入缺字的屬性資料,待缺字整理告一段落,大家再來討論這些缺字的取捨問題,以加速佛典共用造字集的推出。
參考文獻
- 『中文字形資料庫的設計與應用』(謝清俊、莊德明、張翠玲、許婉蓉,1995年4月)
- 『漢字綜合索引字典』(劉達人、杜敏文、謝清俊、張仲陶、蔡中川、林樹合編,1979年10月)
- 『中文電腦基本用字研究』(林樹,1972年3月)
- 『佛典造字的處理』(黃沛榮口述,1995年12月)
欢迎投稿:lianxiwo@fjdh.cn
2.佛教导航欢迎广大读者踊跃投稿,佛教导航将优先发布高质量的稿件,如果有必要,在不破坏关键事实和中心思想的前提下,佛教导航将会对原始稿件做适当润色和修饰,并主动联系作者确认修改稿后,才会正式发布。如果作者希望披露自己的联系方式和个人简单背景资料,佛教导航会尽量满足您的需求;
3.文章来源注明“佛教导航”的文章,为本站编辑组原创文章,其版权归佛教导航所有。欢迎非营利性电子刊物、网站转载,但须清楚注明来源“佛教导航”或作者“佛教导航”。