本文久未更新, 大概有空重寫比較快吧 ;)
請參考相關 url 以獲得較新資訊
autrijus 的 綺麗的萬國碼平滑字環境
	打造全 Unicode、平滑字型環境的設定
Eric Cheng 的 utf8note
	討論 mlterm/screen font width 的問題, 及其他有趣的東西

我一直在想如何能夠順利的從 big5 轉換成 utf8, 且在這過度期能方便的在兩者間切換. 就我所知有些軟體能夠 run time 各別切換 input/output 的 encoding 譬如 screen, mlterm, vim 之類. 要在 terminal 下方便的切換 big5/utf8 encoding 可以透過 mlterm or screen 譬如在 rxvt 下, 配合 screen, 示意符號如下 平常 (rxvt-big5)(big5-screen-big5) 當遇到 utf-8 encoding 時, 利用 screen 把 current window 的 encoding 換成 utf8. 如 (rxvt-big5)(big5-screen-utf8) 如圖 由於 utf-8.txt 中有些字不在 big5 range 中, 所以出現問號(?). 不過可以確定若 utf8 字都是在 big5 range 的話, 是正常的. (註, 其中日文假名的對映是錯的, 請參考 yjchou 的文章修正) 另一個例子是用 mlterm, 平常使用 big5 encoding (mlterm-big5), mlterm 可以 run time 改成 (mlterm-utf8).如圖
screen 可以支援多種 encoding (*-screen-*) mlterm (mlterm-*) 我常用的 editor vim, 也支援 encoding 切換 (*-vim-*) 只要該兩個程式的 * 彼此有 match, 就可以任意切換, 譬如可以 (mlterm-utf8)(utf8-screen-utf8)(utf8-vim-*) 只要小心從 utf8 轉 big5 可能會掉字的問題就好, 譬如 vim 發現 (big5-vim-utf8) 會掉字, 就乾脆整個不轉. 以下是用 mlterm, 裡頭 run vim, 同時編輯 big5/utf8 的檔案 (mlterm-utf8)(utf8-vim-big5/utf8) 注意到最下面一行有 [converted] 的字樣.
各程式怎麼設定 screen (/usr/ports/misc/screen) 請參考 yjchou 寫的 screen with utf8 vim (/usr/ports/editors/vim) vim 要把 multibyte 選項編進去, 用 :set encoding 及 :set fileencoding 各別指定顯示及檔案的 encoding 即可. 或是開啟檔案時指定, :e ++enc=utf8 utf-8.txt, 如果檔案已經用錯誤的 encoding 開啟 可以改變 buffer 的 encoding :e ++enc=utf8 % 另外這個 vim plugin 可以偵測 .html/.txt 檔中 charset= 的字串, 自動換 encoding 另外請參考 :help multibyte mlterm (/usr/ports/x11/mlterm) mlterm 除了可以切換 window encoding 之外, 也可以切換 XIM server/encoding 譬如我用 (xcin-big5)(big5-mlterm-utf8) 則我可以輸入 big5 range 的字, mlterm 會幫我轉成 utf8. 也可以 runtime 換 XIM server, 利用選單改成 (Ami-ko_KR)(ko_KR-mlterm-utf8). 也就是說, 我能夠 run 多個 XIM server, 利用 mlterm, 輸入 utf8 各 range 的字. (我只會叫出 XIM server, 但我不懂它的輸入法, 不知道如何輸入其他語言的文字, 圖片中的簡/日/韓字, 都是從 mozilla 剪下貼上的) mlterm 並未限定 window encoding 與 font encoding 要一樣. 譬如我可以使用 utf8, 但當遇到 big5 range 的字, 使用 big5 font. 由於現有的 iso10646 font 很醜, 且缺字. 因此我設定 not_use_unicode_font=true 這帶來另外一個問題, 現有 16 點的 cns11643 font 是從 40點轉過來的, 很醜. 我 dirty hack 把 cns11643 的 mapping 拿掉, 這樣 mlterm 就去找其他字型. (譬如某些字, 同時被 cns11643 與 gb2312 cover 到) 至於 anti-alias 我試不出來. 以下是我的 mlterm 設定檔, 放在 ~/.mlterm 下 main font xim 這是拿掉 mlterm cns11643 mapping 的 dirty hack, 放在 ports/x11/mlterm/files 目錄即可. patch-cns11643 我個人是希望能夠用 (mlterm-utf8)(utf8-screen-*) 當作日常使用的 terminal 因為我喜歡用 screen, 前者要切換 encoding 要用滑鼠/選單. 但在 (mlterm-utf8)(utf8-screen-big5) 的情況下, 一些特殊符號會有問題, 我還沒去 check 問題出在哪裡.
其他有趣的東西 luit XFree86 內附的程式, 請看該網頁的 screenshots 就知道 luit 是做什麼的了!