[轉錄]Re: [轉錄]多語 shift 終端機實作現況

看板HANGUKMAL (韓語板)作者 (TINNMINN/RBSAUD)時間16年前 (2008/03/03 14:43), 編輯推噓3(305)
留言8則, 3人參與, 最新討論串3/7 (看更多)
※ [本文轉錄自 PCman 看板] 作者: rickhsu (TINNMINN/RBSAUD) 看板: PCman 標題: [轉錄]Re: [轉錄]多語 shift 終端機實作現況 時間: Mon Mar 3 14:42:56 2008 ※ [本文轉錄自 PttCurrent 看板] 作者: piaip (-) 看板: PttCurrent 標題: Re: [轉錄]多語 shift 終端機實作現況 時間: Mon Mar 3 11:17:06 2008 ※ 引述《rickhsu (TINNMINN/RBSAUD)》之銘言: 說一說我個人的想法 === UNICODE 與 PTT 系統內碼 ================================================ 多國語言同時顯示 (Multilingual) 使用 Unicode 才是正解, 這應該是大家都同意的作法。 但以現有 telnet/text terminal 的環境而言, Unicode 有下列問題: (1) 支援的 client 不夠多也不夠普遍。 (2) 承(1), 所以伺服器端勢必要提供 Big5 輸出的界面 (就如同現在可在 login 切 utf8 mode 一樣);結果就是伺服器不停的花時間在重複轉換 UTF*->Big5 這個問題在以前 in2 有提過。 (3) Ambigious CJK Width。 Unicode 很多字元設計是在 GUI 上使用,對於 text terminal 顯示寬度定義的混淆也是常有問題。 (4) 現有 TW BBS 的 ASCII Art 常使用一字雙色,要另想方法來解決 (5) 若 server 想使用 Unicode 為內碼: UNIX 系統對 native UTF16(ucs2) 的支援不好,若使用 UTF8 則不利於 text terminal 的位置計算。 我自己是使用 pietty(UTF8) -> screen(UTF8->Big5) -> PTT(Big5) 所以 Unicode <-> Big5 on text terminal 的問題已經見過很多了 是以, PTT 系列跟很久以前 in2 在 PttCurrent 提過的一樣, 暫時沒有轉換系統內碼為 Unicode 的打算 (如果哪天改用 database 為底層或許有可能) === Multilingual 的處理與計畫 ============================================== 支援 multilingual 是很好的構想。 不過目前需求似乎還不大,所以 PTT server 端也暫時不會為此修改。 有需要的使用者自行使用特定 client 應該還算可接受的解法 我心目中理想的解法是如同 HTML 的 entity 一樣,用 &#1234; 這種方式,使用 Unicode 編碼且同時不會破壞到其它不支援的 client 顯示,而且未來想跟 HTML 互轉也方便。 當然,這只是我個人的想法。 === 前文討論 ===============================================================

請問樓上ptt改上面的東西對於目前維護ptt的人員來說是

像開腦手術的大工程還是像除斑雷射的小工程哪一種等級?
若是以 "內碼轉 utf16/utf8" 而言,我想比較像開腦手術吧,畢竟所有的字串處理 都幾乎要重寫了。 當然這或許是我們能力不足才覺得像開腦 - 所以也歡迎不同意的人可以自己操刀再發表 patch :)

另外一個問題是要去哪裡看ptt對於多語言處理支援的規劃

我目前僅知pttsugguest有打m的沒有看到類似的...
程式討論是 PttCurrent , 比較偏不技術面的則是 PttSuggest Charset/Multilingual 的問題剛好處於兩者之間吧

還是這個問題不屬於技術層次的問題?

技術上應該是不難,不過要 PTT 所有儲存的資料全部轉換成

UTF-8 可能是站方意願不高的原因吧
轉 UTF8 可以解決不少問題,所以意願是有的,只是技術與相容問題太高。 當年作個 DBCS detection 就已經見識過千奇百怪的相容性問題了 ANSI terminal engine 的改寫時也是

現在我都搞不清楚了...到底ptt修改程式是必要的還是選項

的一種比較理想的方案?
希望前面的說明對你有幫助。 另外還可以參考 DBCS detection (雙位元字偵測) 的結果 來預期此類修改的成果會是怎樣。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.54

03/03 14:26,
謝謝您的講解與回答.讓我們更清楚實際的情況.
03/03 14:26

03/03 14:27,
目前albyu目前也是朝特製客戶端來進行..
03/03 14:27

03/03 14:29,
針對"Multilingual 的處理與計畫"您的理想解法能否
03/03 14:29

03/03 14:30,
比較仔細說說您的意見嗎.能多花您一點點時間?
03/03 14:30

03/03 14:34,
我個人是覺得這個跟向上相容性有點關係.多匯集高手的意見
03/03 14:34

03/03 14:35,
這樣或許也替將來可能寫未知相容程式的人省點時間.
03/03 14:35

03/03 14:38,
希望大家不吝指教集思廣義...讓albyu有更多的參考..
03/03 14:38

03/03 14:40,
另外請借轉本文至其他版...謝謝
03/03 14:40
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.169.215.127 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 221.169.215.127

03/03 15:06, , 1F
piaip大的 HTML entity 的想法真的很好,算是很好的解決方法
03/03 15:06, 1F

03/03 15:07, , 2F
不過,這麼一來我又要重新來改寫了
03/03 15:07, 2F

03/03 15:17, , 3F
這時候慢慢寫最重要...不要急於一時...
03/03 15:17, 3F

03/03 15:18, , 4F
我們這些測試員可以忍耐...
03/03 15:18, 4F

03/03 15:32, , 5F
不過這個方法還蠻難處理的 XD entity 的長度不固定,而且
03/03 15:32, 5F

03/03 15:32, , 6F
轉出來的字的寬度也有可能不同...
03/03 15:32, 6F

03/03 15:50, , 7F
更新pttcurrent/pttsuggest/pcman/programming/c_and_cpp
03/03 15:50, 7F

03/03 15:59, , 8F
等待~等待~
03/03 15:59, 8F
文章代碼(AID): #17ovuC9W (HANGUKMAL)
文章代碼(AID): #17ovuC9W (HANGUKMAL)