這兩天我被 Mac OS X 的倉頡耍了。在前面的一篇文章裡我們討論過 Mac OS X 10.3 Panther 裡的倉頡輸入法存在些許多令人發狂的問題。而這次使用它時,我不是打出亂碼或打不好字,而是被它愚弄了一番。話說本人在 Google 用一個包含「顏」這個字的名詞來搜尋網站時,竟然發現找不到東西,或只能找到一兩筆資料。我很確定我搜尋的詞不至於冷門到這種令人心寒的地步,所以心想 Google 竟然也有秀逗的時候。
不過我仍然不太願意相信 Google 會出這種問題。在試著增加字詞來重新搜尋幾次後,Google 告訴我繁體中文的網站都沒有符合我的搜尋條件的,反倒有不少日文網站符合條件。這使我想到:我該不會用到了什麼日本才會用到的漢字吧?於是我把我在 Google 打的「顏」給拉到「字元面板」裡,發現有兩個很相似的「顏」,糟糕的是我打出來的那個「顏」是一個未收錄於 Big 5 的字 。真正的 Big 5 編碼的「顏」是它左邊的那個。
我打「顏」這個字時,是輸入「卜竹一月金」的倉頡碼,然後按空白鍵。之後螢幕上出現兩個同碼的字可供選擇,第一個是「頻」,而第二個是「顔」。這時我當然是按下 2,並且也以為自己輸入了一般的「顏」字。但是這個字其實是一個日文的「顏」,而一般繁體中文網頁用的「顏」則是 Big 5 所收錄的,它們兩者雖然很像,但在字形上略有不同,在 Unicode 裡也被視為不同的字。我用一個日文的「顏」去搜尋繁體中文的「顏」,自然是找不到東西了。至於 Big 5 的「顏」到哪裡去了呢?為什麼在打倉頡時沒有列出來?在試驗之後我發現它必須輸入「X卜竹一月」的倉頡碼,也就是在前面加一個「X」,才能被打出來。
為什麼用倉頡輸入法會打出日文專用的「顏」呢?因為在 Mac OS X 10.3 Panther 裡的倉頡輸入法支援了 Big 5E 這種編碼,因此除了可以打出 Big 5 裡的漢字,還可以打出 Big 5E 所支援的各種罕用字、簡體字、異體字、和日文漢字等。
我們可能還想問一個問題。既然這兩個字這麼像且彼此相通,為什麼系統不當把它們成同一個字來處理呢?因為 Big 5E 為了能轉換到 Unicode,在漢字的收錄上是以 Unicode 為根據。而 Unicode 在收錄漢字時,只要各個漢字在字形上有差異,就把它們當做不同的字,並各自給予不同的內碼,而不管它們是否在字音、字義、和實際用法上可能根本沒有差別。
看到這裡可能有人會說,這種打錯字的情形應該是編碼本身的問題,而不能歸咎系統倉頡輸入法。但是事實上 Panther 還是要負很大的負任,因為既然兩種「顏」它都支援,而且兩者的倉頡碼都一樣,那麼在使用者輸入「卜竹一月金」並按空白鍵後,兩種「顏」都應該出現讓使用者選擇,而不是只有其中一個會出現供選擇,另一個卻非要在倉頡碼前加一個「X」才能打出。更何況它列出供選擇的根本竟是一個平常在繁體中文所不採用的日文漢字。在兩者字型這麼相似的情形下,自然會造成使用者莫大的困擾。