[轉錄]Re: 有關 PTT 是否能輸入韓文的問題
※ [本文轉錄自 HANGUKMAL 看板]
作者: albyu () 看板: HANGUKMAL
標題: Re: 有關 PTT 是否能輸入韓文的問題
時間: Thu Feb 28 18:01:49 2008
看來大家對這個能夠顯示韓文的 client 的需求倒是挺迫切的
雖然我現在能夠控制 PCMan X 讓它在某些情況下改用 EUC-KR 來顯示韓文
但目前仍屬實驗性的階段,也還不能直接用輸入法在 PCMan X 輸入韓文
那張截圖上的韓文,是我先用別的 client 打進去,PCMan X 目前只能顯示而已
關於輸入韓文的部分我現在正在研究中,已有了些許眉目
還有一個重要的問題,PCMan X 目前僅能在 Linux 和 FreeBSD 上面運作
由於我個人並不使用微軟 Windows 作業系統
因此在 Windows 平台上的 client 開發可能暫時不會這麼快動手
我預計會從 Windows 上的 Open PCMan 著手來改
不過 Open PCMan 和 PCMan X 是完全不同的東西
內部的程式碼和編碼處理架構截然不同,等於是要寫兩份程式
如果有人要參與的話,我想基本的能力可能還是需要熟悉 C++ 程式語言
因為 PCMan X 和 Open PCMan 都是用 C++ 撰寫的
至少要能夠看懂 C++ 的語法,才能了解它的處理方式並著手修改
關於我上一篇文章,為什麼能夠讓中文和韓文同時出現,我簡單說明一下
基本上我的作法很簡單,我先找出 PCMan X 的程式碼裡面
哪個部分是負責將 BIG-5 轉換成 UTF-8 讓系統可以顯示出中文來
而後我再加了幾行程式碼,讓 PCMan X 在繪製螢幕的某些地方的文字時
不是從 BIG-5 轉到 UTF-8,而是從韓文的 EUC-KR 編碼轉到 UTF-8
這樣,只要 EUC-KR 的字串出現在某些位置
PCMan X 就會把它們從 EUC-KR 轉成 UTF-8,從而顯示出正常的韓文出來
不過,光是只有在特定位置顯示出韓文還是不夠
主要還有幾件事情要做:
一、設計編碼切換的 control sequence
這是要通知 client 的終端機何時要切換到韓文,何時要回到中文的控制碼
我正在考慮的是,是不是要利用 ANSI 控制碼的方式來控制編碼的切換
也就是設計一個特殊的 ANSI 控制碼,當 client 讀到這個控制碼時
就會進行顯示編碼的切換
若要設計成具有通用性,則控制碼本身最好能帶有欲切換的編碼名稱
比如說名稱為 EUC-KR 就能切到韓文,名稱為 KOI-8 就能切到俄文等等
這個地方是未來使用上最重要的部分,可能要先有完善的規畫
二、編碼切換控制碼的處理函式
訂定了切換的控制碼,接下來就是要寫程式,修改 PCMan X
讓它能夠認得切換控制碼,並做顯示編碼的切換
三、輸入文字之編碼切換
上面的步驟僅實作讓終端機能夠顯示出韓文,但還不能輸入韓文
還需要再修改 PCMan X 接受使用者輸入內容時的編碼轉換的程式部分
這部分應該是最大的困難點之所在
終端機必須要能夠知道使用者現在是在輸入哪一種文字
可能的方法有幾個,一個是設計一個選單,讓使用者選擇要輸入何種文字
另一個方法就是自動偵測,不過相對地難度也高
現在我們在 PCMan、KKMan、PieTTY 等程式裡面不能輸入韓文的原因就在這裡
系統接收到韓文的輸入,但沒辦法把它轉成 BIG-5 的編碼
這部分可能要花不少時間來實作
有興趣的人,或是有任何建議,非常歡迎一起來討論
有能力開發 Windows 程式的人,請不吝參與修改 Open PCMan 的行列
因為我實在是不大會使用 Windows.....
希望在 BBS 能夠自由自在輸入各種語言文字的那天早一點到來啊!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.166.80.33
→
02/28 18:15,
02/28 18:15
→
02/28 18:28,
02/28 18:28
推
02/28 18:29,
02/28 18:29
→
02/28 18:29,
02/28 18:29
→
02/28 18:30,
02/28 18:30
→
02/28 18:31,
02/28 18:31
→
02/28 18:32,
02/28 18:32
→
02/28 18:38,
02/28 18:38
→
02/28 18:39,
02/28 18:39
→
02/28 18:44,
02/28 18:44
推
02/28 19:12,
02/28 19:12
推
02/28 19:13,
02/28 19:13
推
02/28 19:27,
02/28 19:27
推
02/28 19:28,
02/28 19:28
推
02/28 20:06,
02/28 20:06
→
02/28 20:06,
02/28 20:06
推
02/28 20:21,
02/28 20:21
推
02/28 20:25,
02/28 20:25
推
02/28 22:11,
02/28 22:11
→
02/28 22:19,
02/28 22:19
→
02/28 22:20,
02/28 22:20
→
02/28 22:21,
02/28 22:21
→
02/28 22:24,
02/28 22:24
→
02/28 22:26,
02/28 22:26
→
02/28 22:28,
02/28 22:28
→
02/28 22:28,
02/28 22:28
→
02/28 22:29,
02/28 22:29
→
02/28 22:30,
02/28 22:30
→
02/28 22:31,
02/28 22:31
→
02/28 22:32,
02/28 22:32
→
02/28 22:35,
02/28 22:35
→
02/28 22:37,
02/28 22:37
→
02/28 22:39,
02/28 22:39
→
02/28 22:46,
02/28 22:46
→
02/28 22:47,
02/28 22:47
→
02/28 22:53,
02/28 22:53
→
02/28 23:03,
02/28 23:03
→
02/28 23:43,
02/28 23:43
→
02/28 23:43,
02/28 23:43
還有 22 則推文
→
02/29 17:59,
02/29 17:59
→
02/29 19:39,
02/29 19:39
推
02/29 20:20,
02/29 20:20
推
02/29 20:49,
02/29 20:49
→
02/29 20:52,
02/29 20:52
→
02/29 20:53,
02/29 20:53
→
02/29 20:55,
02/29 20:55
→
02/29 20:56,
02/29 20:56
→
02/29 20:58,
02/29 20:58
→
02/29 21:34,
02/29 21:34
→
02/29 21:37,
02/29 21:37
→
02/29 21:42,
02/29 21:42
→
02/29 21:44,
02/29 21:44
推
02/29 22:48,
02/29 22:48
→
02/29 22:51,
02/29 22:51
→
02/29 22:53,
02/29 22:53
→
02/29 22:56,
02/29 22:56
→
02/29 23:03,
02/29 23:03
→
02/29 23:04,
02/29 23:04
→
02/29 23:06,
02/29 23:06
→
02/29 23:10,
02/29 23:10
→
02/29 23:11,
02/29 23:11
→
02/29 23:11,
02/29 23:11
→
02/29 23:14,
02/29 23:14
→
02/29 23:15,
02/29 23:15
→
02/29 23:21,
02/29 23:21
→
02/29 23:22,
02/29 23:22
→
02/29 23:23,
02/29 23:23
→
02/29 23:25,
02/29 23:25
→
02/29 23:26,
02/29 23:26
→
02/29 23:27,
02/29 23:27
推
02/29 23:28,
02/29 23:28
→
02/29 23:32,
02/29 23:32
→
02/29 23:33,
02/29 23:33
推
03/01 08:29,
03/01 08:29
推
03/01 08:29,
03/01 08:29
推
03/01 08:30,
03/01 08:30
推
03/01 08:31,
03/01 08:31
推
03/01 08:32,
03/01 08:32
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.105.201.25
討論串 (同標題文章)
完整討論串 (本文為第 4 之 5 篇):