Pages

May 24, 2004

擁抱萬國碼 Embracing unicode

這個噁心八拉的標題宣示了我未來面對多國語文處理的態度,尤其是在選擇 web apps 上面,未來新版建築所網站系統上所有跑的東西都要 unicode 化。目前已經支援 unicode 的有 pLog、phpMyAdmin、正在安裝中的 phpBB2、以及計畫中的 wiki。文件採用 unicode 的好處是可以多國語文混用,支援罕用字數量遠超過 big5,例如常見的: 碁(#7881)、粧(#7CA7)、堃(#5803)等。以下概略說明這些系統的設定...

pLog
  1. pLog 內定的中文編碼就是 utf-8,不需要改設定,直接安裝就是了。
  2. 但是某些 templates 顯示中文會有問題,例如 blueish 樣式的邊欄(panels)標題字的第一個中文字會變成亂碼。這是因為 template 中強制將第一個字母變成大寫,所以某些中文字的編碼就亂掉了。修改辦法是將 template 中所有出現 {$變數|capitalize} 中的 |capitalize 刪掉,用文字編輯器裡的 Find and Replace 就可以搞定。
phpMyAdmin → PHP 必須支援 iconv 和 dl()
  1. 將 config.inc.php 中 $cfg['AllowAnywhereRecoding'] 改為 TRUE。
  2. 進入 phpMyAdmin 主頁選定 Language 為 Chinese traditional (zh-tw-utf-8) 。
  3. 設定 MySQL 文字編碼為資料庫內容實際編碼,不同資料庫可能用不同編碼,隨時可以再回來主頁更改這項設定。
phpBB2
  1. 下載並解開 phpBB2.0.8a完整中文版
  2. 將 language/lang_chinese_traditional_taiwan 中所有檔案內容文字轉換為 utf-8 編碼。至於怎麼把一篇 big5 編碼的文章快速轉換成 utf-8 呢?很簡單,在 Windows 中用小作家、在 Mac OS X 用 TextEdit 打開檔案,另存新檔時選定編碼方式為 utf-8 就可以了,免錢又快速。
  3. 確定 lang_chinese_traditional_taiwan/lang_main.php 裡面 $lang['ENCODING'] 已經改為 'utf-8'。
每個人對擁抱萬國碼的態度不同,我是認為肯定比大五碼好啦,而且一套編碼就囊括所有主要語文,還能要求什麼?從使用者角度來看,檔案好交換、編碼不出問題就是好東西,目前主要軟體商(如 Microsoft、Apple、Adobe 等)也多全面採用 unicode,未來十年內應該會是它的全盛時期。

No comments: