跳至內容

維基百科討論:繁簡處理/檔案4

頁面內容不支援其他語言。
維基百科,自由的百科全書

新的想法

由於wp是基於UTF-8的,在中文版中也可能有其他語言的文字出現(比如跨語言連結,繁簡體可以在同一個頁面中共存),我們現在的討論繁簡體問題也就必須基於UTF-8,而不能採用一般的轉換為GB或BIG5的方式,否則有些文字可能會造成錯誤。也就是說,我們需要在UTF-8中進行繁簡體的轉換。不知道這在技術上是否可行?

另外,標題和界面也需要解決繁簡體的問題。只有這樣,才能徹底解決問題。還有就是連結文字的繁簡體問題。所有這些都需要在UTF-8中進行繁簡體的轉換。

fiancee visa k1 visa fiance visa h1 visa green dot prepaid card green card dv 2007

根據上面大家的建議,我這樣認為:(這種方法需要3個數據庫,繁簡混合數據庫,簡體數據庫,繁體數據庫)

由於解決繁簡體問題是為了閱讀上的習慣,因此可不可以這樣,假設當一個人第一次來到這裏,系統根據他的IP位址或瀏覽器的語言代碼從簡體數據庫或繁體數據庫中自動調用相應的文章,並把它記錄到cookies中(當然界面也需要進行UTF-8的繁簡轉換)。這樣當然有可能會出現一些判斷錯誤,我們可以在網頁的某個顯著位置做一個到另外一個語言版本的連結。當登錄為用戶後,可以通過參數設置進行選擇。當用戶進行編輯時,在編輯框中則顯示為原始的輸入信息,也就是從繁簡混合數據庫中調入文章。保存時,將文章原樣存入繁簡混合數據庫,並同時進行UTF-8繁簡轉換,產生繁簡兩個版本,分別存入簡體數據庫和繁體數據庫,顯示時則根據用戶設定再從這兩個數據庫中選擇一個調入文章。

這種方法可能比較複雜,而且可能需要對軟件進行修改,但是可以根本解決當前所存在的問題以及以前討論中提出的問題。這種方法對參與者可能有較高的要求,因為在編輯時需要看懂繁簡體。

請大家繼續討論!--Shizhao 07:43 2003年12月8日 (UTC)

對了,使用這種方法前,必須對當前的文章進行一次清理,刪除同名文章。比如東盟亞細安只能有一個存在,否則會造成衝突。--Shizhao 07:47 2003年12月8日 (UTC)

這樣的化,那我們要越早決定越好;要不然到時候我們有7、8千文章的時候,怎麼整理啊?!應為這個一定要人工整理的,有些簡/繁體版有不同內容。-Menchi 07:53 2003年12月8日 (UTC)
上面Virtu有提到可以在數據庫中保存繁、簡兩個版本,理由是編輯後只要轉換一次就可以,而如果儲存一個混和版本,則必須在每次顯示時都進行轉換,比較浪費時間。我覺得這個建議似乎更好,因為編輯次數總要比瀏覽次數少,而且轉換時連標題一起轉換,也解決了條目用簡體還是繁體的問題。--Formulax 08:58 2003年12月8日 (UTC)
我和Virtu的意思差不多,只是多增加了一個繁簡混合數據庫,用來保存原始的輸入信息,也是出於安全上的考慮。這個數據庫只在編輯是才調用,閱讀時只調用簡體或繁體數據庫。但是這個數據庫是否可以不要呢?請大家討論。--Shizhao 09:21 2003年12月8日 (UTC)
現在技術上沒有任何不可行的地方。只是我們不懂PHP或者沒有多餘的時間。我也覺得數據庫保留繁、簡兩個版本的好,這樣每次編輯完成後只作繁、簡兩個版本的兩次規範化就可以了。不管輸入的是繁體還是簡體的條目,每次保存編輯內容時,把編輯內容規範化為簡體一個版本、繁體一個版本,分別保存起來。如簡體用戶編輯簡體內容的東盟後保存,系統自動生成東盟亞細安的兩個內容一致的新版本。這種作法唯一的麻煩是繁簡標題相同的情況,如地名表,這種情況下用自動消歧義的方法來解決,自動生成地名表 (繁)地名表 (簡)這樣兩個條目。--Mountain 13:32 2003年12月8日 (UTC)
Shizhao說的「第三個數據庫」可以不要。在我上面的這個方案里,WikiMedia原來的數據庫表不需要變動。只是每次編輯分別各為數據庫表cur和old產生繁簡兩個記錄而已。--Mountain 13:32 2003年12月8日 (UTC)
Mountain是說不變數據庫,只是產生繁簡兩個版本?這就帶來了另外一個問題,就是條目計數會變成單一版本條目X2的情況。造成虛假的條目計數。而且自動消歧義會造成一個問題。比如在文章中連結地名表,就會顯示為一個空的連接,因為只有地名表 (繁)地名表 (簡)才是正確連結。當然也可以用程序進行自動轉換,但是這就更會加大伺服器的負荷,而且很難保證不會出錯。因此採用一個繁體數據庫,一個簡體數據庫比較理想。但是這就需要對軟件作比較大的改動。

另外如果採用兩個數據庫的方案,在方案實施前,必須進行清理,並且清理時一般用戶不能編輯,只保留一個版本,比如把頁面先全部手工轉化為簡體,刪除相同的繁體版本。工作量很大(幾千個頁面)。而使用三個數據庫的辦法,就不需要進行清理,只是在編輯時可能會繁簡體共存。

或者還有一個辦法,在實施方案時,新建兩個數據庫,一個簡體,一個繁體,現在這個數據庫作為臨時數據庫。繁簡兩個數據庫建好後,在一個頁面沒有編輯前,用戶瀏覽頁面調用臨時數據庫,第一次編輯文章後,將文章分別轉換為繁簡兩個版本保存到各自的數據庫中,而將臨時數據庫中的相應頁面刪除,以後瀏覽編輯這個頁面就採用兩個數據庫的方法。直到臨時數據庫中的所有文章全部被刪除,臨時數據庫就可以取消掉,採用兩個數據庫的方法。這種方法比較簡便,就是需要對系統做一些修改,但是不會出現以上討論出現的情況。

綜上所述,現在問題集中在數據庫的處理上,有以下幾種方法:

  • 2個數據庫
  • 3個數據庫
  • 3變2數據庫

請大家發表看法--Shizhao 14:50 2003年12月8日 (UTC)

:還有一個方法,把繁體版簡化後的內容放在簡體版的內容前面,存入簡體數據庫內;再把新的簡體版繁化放在繁體數據庫內。那就只要2個數據庫,而且全部可自動操作,不經人手。結果是同一版本裏內容可能重覆兩次,但用戶瀏覽時,就很容易改正了!Wshun 05:39 2003年12月9日 (UTC)

或者只用一個數據庫,在數據庫中增加一個字段,現在的文章仍然存放到原來的字段,新的字段存放繁體版內容。然後根據用戶設置分別讀取簡體或繁體內容。這樣不需要增加數據庫,只需要對數據庫做一些修改就行了。只是數據庫的大小會比原來增加一倍。這樣是不是會更簡單一些?--Shizhao 05:49 2003年12月9日 (UTC)
會不會繁簡體內容不同? Wshun 05:53 2003年12月9日 (UTC)
我的意思是,根據用戶習慣讀取相應的繁簡體頁面,編輯保存時,分別轉換保存為兩個版本到各自的字段中去,整體上仍然是一條記錄,但是卻有兩個版本(不會造成條目計數錯誤)。而且內容肯定是一致的。--Shizhao 06:00 2003年12月9日 (UTC)

IP位址或瀏覽器的語言如果不容易處理,或不準確的話,那就給第一次來的讀者第一個頁寫:

請問讀者想使用簡體繁體版?

Menchi 07:53 2003年12月8日 (UTC)

我想不用吧。我局的可以在頁面上方「打印頁面」的旁邊增加一個連結,如果系統判斷顯示為繁體頁面,則這個連接上的文字為「簡體版」,點擊後可以轉換為簡體。反之亦然。而且這樣任何時候當用戶想看另一個語言的版本都馬上可以看到,雖然這種情況可能會很少出現(我是空有想法,卻不會編程,唉...)--Shizhao 08:15 2003年12月8日 (UTC)

跨語言連結的問題

想到一個問題,在其他語言版本的到中文的跨語言連結如何解決?如果使用多個數據庫,到中文的連結是用簡體還是繁體?想到一些方法:

  1. 2個數據庫:根據跨語言連結上的中文,系統自動判斷使用哪個數據庫。或者根據中文版上用戶的語言設置,系統判斷使用繁體還是簡體。
  2. 3個數據庫:採用#1的做法,或者調用繁簡體混合數據庫。
  3. 採用現在其他語言版本的做法,分別建立與繁體和簡體的連結,(即使用zh-cn,zh-tw)。這種方法比較簡單,而且在中文版中也可以解決繁簡體之間的切換問題。但是這種方法最好是系統自動完成。即在其他語言上做跨語言連結時,使用[[zh:中国]],保存時系統自動生成[[zh-cn:中国]]和[[zh-tw:中國]]分別連接簡體數據庫和繁體數據庫。在中文版上系統可以自動生成到另一個數據庫的連結,比如一個簡體用戶編輯中國條目後,系統自動生成[[zh-tw:中國]]。這樣是否比較好?

還有沒想到的嗎?--Shizhao 03:13 2003年12月9日 (UTC)

還想到一個問題,就是界面的問題。現在的界面全部是簡體,我們如何進行繁簡體的轉換呢?如果採用一般方法,每次調入頁面時,界面都將作一次繁簡體的判斷和轉化工作,會加大伺服器的負荷。

我的辦法:將語言文件作這兩個,分別對應簡體和繁體,系統根據設置自動調入。另外,現在使用mediawiki消息進行大部分的本地化工作,我們是否可以也採用2個數據庫的辦法進行處理?--Shizhao 04:02 2003年12月9日 (UTC)

這個辦法我覺得最好,上次我問Brion他說可以辦到。目前我認為可以先實現界面繁簡體並存。我們現有的簡體LanguageZh.php只要轉換一下就可以安裝,然後讓Brion在中文版的用戶設置中加入繁體、簡體的選項選擇界面就可以了。另外Mav在這裏說對匿名用戶不必根據IP位址自動給出不同的界面,只要再放一個連結在不同界面之間切換就可。這樣就更方便了。--Formulax 07:01 2003年12月9日 (UTC)
和我的想法大體上一樣,可以先把Formulax說的先做起來----

Wiktionary的中文版問題

Wiktionary也將要推出中文版,我們是否也討論一下這個的繁簡體問題。由於它是一個字典/詞典,因此繁簡體問題比Wikipedia更加複雜。比如一個「國」字條目,他肯定要提到繁體的「國」,因此無法使用我們在Wikipedia上討論的解決辦法。因為所有的文字都將會轉化為簡體。而且如果「國」字作為條目,必然涉及到它的簡體形式,這個矛盾如何解決?難道設兩個條目?一個繁體的「國」,一個簡體的「國」?但是這兩個條目釋義肯定都是一樣的,因為都是一個字。我想到一個辦法:使用一個特殊的標記,被標記的字詞不做繁簡體的轉化,其他內容的處理則採用Wikipedia上的辦法。


"張三豐"還是"張三丰"

簡體版是「張三丰」,繁體版應是"張三丰",但有人用「張三豐」。怎樣可以防止繁簡轉換時出問題?這帶出二個問題:若必要同時使用繁簡體,怎麼辦?Wshun

你可以參看我前面討論的內容。我們可以使用一個標記符號,被標記的文字不進行繁簡體處理,這樣是不是可以?但是標題就無法這樣處理了--Shizhao 06:04 2003年12月9日 (UTC)
漏看了那一段,是好方法--Wshun 06:14 2003年12月9日 (UTC)
或者我們對標題進行處理,設置一個選項,允許標題不進行繁簡體轉換。或者編輯時設置兩個標題,分別對應繁簡兩個格式,由於這樣可能會造成混亂,這個功能是否可以只允許管理員使用。--Shizhao 06:51 2003年12月9日 (UTC)
我的意見是:所有標題不要進行轉換,這樣可允許更大的彈性,如「張三豐」。Wshun 07:08 2003年12月9日 (UTC)
可是不轉換看起來不奇怪嗎?比如標題是簡體,內容卻是繁體。而且內部連結也很難處理,必須知道標題是簡體還是繁體才行--Shizhao 07:31 2003年12月9日 (UTC)
是怪了一點,但可以接受。內部鏈接卻是個問題,想不通 :p Wshun 23:52 2003年12月9日 (UTC)

回應見Re:"張三豐"還是"張三丰"

跨語言連結

現時是否可以暫時採用跨語言連結的方式對繁簡體頁面進行連結,而不使用現在的繁簡體連結做法?就是說使用zh-tw和zh-cn,向其他語言的跨語言連結一樣,出現在頁面的上部,而不像現在一樣放在文章裏。這樣做比較方便,而且也比較好看,不會影響文章的版面佈局。參看w:New York, New York。現在中文版上無法實現,不知道是什麼原因?--Shizhao 02:03 2003年12月17日 (UTC)

用UTF

上網時間太長,頭比較暈,這裏的討論也沒看完,但是,要下網了,先說兩句。(上網時間長是因為從這裏引出的網站太多了)。用繁簡分離的方法,讓中文人群被阻隔,不好。最好用UTF方式。然後,如果建立時用的條目名稱是簡體,那麼相應的繁體條目重定向到簡體,反之亦然。用繁簡同步轉換的方法技術難度比較高,也容易出問題。最好不要提高技術難度,用簡單辦法解決比較好。

新增:可以將簡體和繁體都作為閱讀的選項,在編輯時只能編輯簡體和繁體混合的UTF-8編碼格式。這樣就避免了閱讀困難,也解決了簡體和繁體共存的問題。

Tomz 16:24 2004年1月20日 (UTC)


Solve the problem in one shoot

Chinese should be a single language, not two or more. Wikipedia should only have one Chinese version. For the economic of maintenance and for usage, one version is better then two or more versions. 中文應該是一種語言文字, 而不是兩種或以上. 所以 Wikipedia 應該只有一個中文版本. 無論從維護的經濟性或從讀者的使用方便來說, 單一版本都是較佳的.

The current usage of Chinese is unhealthy, mainly due to a wrong policy of P.R.C. However, Wikipedia is a international project, we should not limited ourselves to this error. 中文發展到目前的狀況, 可以說處於一種不正常的狀況, 這部份是中華人民共和國政府的語言文字政策造成的. 因為Wikipedia是一個國際性的項目(project), 我們不必要將自己局限在這種錯誤之中.

We have to admit that personal names, cooperated names, trade marks, proper names is not suitable for conversion, they should be presented as they are. If this held, then every page in Wikipedia should have traditional and simplified characters co-exist. Any pure simplified or traditional schemes shall fail at some point. 首先, 我們要承認繁簡體是應該並存的, 人名, 機構名稱, 商標, 專有名詞等不能進行繁簡體轉換. 所以從任何角度來看, 所有頁面都應允許繁簡體並存的. 故此任何純簡體或純繁體的方案都是最終會失敗的.

The usage of language changes due to time-space various. Thus, the terms used shall be considered when design Wikipedia. 其次, 中文的使用地域廣泛, 各地區之間的用語皆有不同. 且會隨時間不斷變化. 因此, 在設計Wikipedia 的時候有必要將此因素考慮進去.

Here is the proposal: 我提出的方案是:

Maintain a single version of both traditional and simplified Chinese version 只維護單一允許繁簡體並存的中文版

We need to maintain a glossary (table of representations of the WikiLinks). The glossary is used to provide links to the same page of different form of WikiLinks, and automatically convert to the representation accroding to the locale a user selected. 除了構築作為百科全書的Wikipedia外, 建立不同時空的術語表(Glossary). 所有鏈結(Wikipedia中的詞條)都需要在術語表之中, 即是說, 建立可以由機器自動替換的術語表. 而可替換的都應由人手標示.

For example, 如:

[計算機]/zh-CN = [電腦]/zh-TW = [Computer]/en.

All of them links to the same definition. 它們都對應同一頁面.

When the user request either one of them, the page is automatically converted to simplified character if required, and all links inside that page is converted according to the locale. There shall not be convert from simplified to traditional characters as human intervention is preferred for accuracy. The conversion can be done in machine assistance however. 當用戶要求[計算機] 或 [電腦] 時, 將頁面中的文字和其中的術語 (Wikipedia Link) 自動轉換成用戶設定的語境 (zh-TW, zh-HK, zh-CN, zh-SG, …). 轉換將包括繁體向簡體的轉換和將Wikipedia鏈結轉換為術語表中相應的語境的形式. 自動轉換最好不要由簡體向繁體轉換, 由簡體向繁體的轉換應該由機器輔助下由人完成.

This require a new feature of WikiMedia, however, this also provide a possible to link all versions of Wikipedia. For example, linking up [Computer] to a Chinese pages. 這需要Wikipedia 中加入新的功能, 但這亦給予Wikipedia不同語言之間融合的一種途徑: 只需對術語表進行擴充即可.

In operation 實際運作時, 會有以下的情境:

1. 頁面創建時創建者可以選擇自己所善長的. 2. 如果頁面中有簡體字的, 為方便繁體字用家, 可以進行人工的簡體到繁體的轉換, 這道工序等同對頁面的編修. 但請不要修改當中的鏈結. 3. 對包括繁體的頁面編修時, 僅懂簡體的用戶需要尊重繁體字的用家, 最好盡量保留其中的繁體字(因為繁體字比簡體字要準確一些, 可以自動轉換成簡體字, 而簡體字則不能). 我建議可以開兩個Window一個顯示簡體, 一個編修, 這樣可以同時學習一下繁體字. 4. 維護術語表. 這是一項新的工作, 但其成果亦相當有用.

1. Page creator can choose whatever character they known best. 2. If a page contain simplified characters, for benefits of traditional users, someone can edit the page and convert the simplified characters to traditional correspondings. The edit should not convert the links. 3. When edit a page contain traditional characters, a simplified user may not known all the characters or can input them. He can still do the edit in any character set they can use. However, I would like them to leave the existing traditional characters untouch. The can open two windows, one display the page in simplified characters the other use for edit. 4. Maintain the Glossary. This is a new task. However the result can be very useful.


樓上提到的張三丰,呵呵。這樣的字一共有53個(在整個簡體和繁體相互轉化的過程中,例如「原、叄、坎」等)。偶可能算個這方面的專家了吧?

可惜現在沒什麼時間能貢獻的,不好意思。

總的意見,只保持一個數據庫是肯定的,不可能弄兩個簡體數據庫出來。 至於兩岸語言習慣的不同,例如「平治」--「奔馳」,「信息」--「資訊」,「通過」--「透過」等等,你最好認為它們是同義詞或者其中一個是方言。這樣的情況就算在內地也是很常見的:

「衛生間」--「洗手間」--「盥洗間」--「男界」--「女界」--「廁所」--「茅房」......

除非你打算徹底解決同義詞的問題,否則在這種類似於方言的東東上花工夫沒有意義。 ——只需要進行簡繁轉化就好了,語言習慣我看就別管了,反正大家都明白其含義就好。

--218.88.210.2


語言習慣的解決辦法


關於同義詞,我建議使用超級連結,讓發現與本地語言中說法不同的時候可以加一個超連結,或編輯已添加的連結,如對上面提到的所有的同義詞都可以加這樣一條超連結「普通話廁所,也叫「衛生間」,香港叫「盥洗間,湖南俗語叫「男界」和「女界」……」(關於地域的說法無實據,但是我想如果是由各地的朋友加上去的,我們就可以確信了)。這樣不但可以收集同義詞,促進中國地區文化的繁榮,因為各地都可以用自己的說法進行編輯,又不妨礙其它地方人的理解。我認為這樣做同時能夠成為一種地域文化的載體。

不同地域語言習慣的解決辦法

語言習慣的解決辦法


關於同義詞,我建議使用超級連結,讓發現與本地語言中說法不同的時候可以加一個超連結,或編輯已添加的連結,如對上面提到的所有的同義詞都可以加這樣一條超連結「普通話廁所,也叫「衛生間」,香港叫「盥洗間,湖南俗語叫「男界」和「女界」……」(關於地域的說法無實據,但是我想如果是由各地的朋友加上去的,我們就可以確信了)。這樣不但可以收集同義詞,促進中國地區文化的繁榮,因為各地都可以用自己的說法進行編輯,又不妨礙其它地方人的理解。我認為這樣做同時能夠成為一種地域文化的載體。

繁體與簡體轉換問題

中文條目中,牽涉政治分歧的條目,在繁體簡體互換的過程中,應該注意以下問題: 1、刪除有政治分歧的內容; 2、對於特定概念或涵義,解釋加注中華民國中華人民共和國或者大陸地區台灣地區,我想彼此可以接受。

Cncs 2004-03-04

這個是麻煩的問題,請大家討論討論。Ktsquare (對話、留言按這裏) 02:00 2004年3月3日 (UTC)
我覺得不必,完全可以在文章中說清楚,把各方的觀點都列出來,這就是中性的觀點--Shizhao (Talk) 05:50 2004年3月3日 (UTC)
我們要不要現在就開一個條目,做一個收集各個中文字的繁體和簡體對應情況表格?中文繁簡體對照表 Dowba 11:28 2004年3月5日 (UTC)
可以呀--Shizhao (Talk) 11:40 2004年3月5日 (UTC)
我發現似乎不用那麼麻煩了,有一個相當好的 PHP class 可以做到在 UTF8 編碼下轉換,這裏有介紹Dowba 14:11 2004年3月6日 (UTC)
對了,如果在程式(你們稱之為編程)方面有需要協助的話我可以幫忙! Dowba 14:11 2004年3月6日 (UTC)
Of course we need ur help! :) this issue has been bothering us for too long a time! any solutions? --Samuel 14:15 2004年3月6日 (UTC)
看到這個程序了。但是看他的說明文檔,似乎不能用在這裏。現在維基百科使用的就是UTF-8編碼,我們只能考慮在UTF-8下進行繁簡體轉換,而不能通過GB或BIG5的轉換實現,因為有可能會讓一些其他語言的文字在轉換過程中丟失--Shizhao (Talk) 14:29 2004年3月6日 (UTC)
這個就可以轉換呀,我上面說過了。我把我轉換的程式碼貼在這裏吧。(假設 $str是一個UTF8編碼的簡體字串)

include "class.Chinese.php";
$chs = new Chinese("UTF8","GB2312",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("GB2312","BIG5",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("BIG5","UTF8",$str);
$str = $chs->ConvertIT();
echo $str;

也就是說,先把UTF8編碼轉換成GB2312,然後再轉成BIG5,最後轉換成UTF8。如果說你們需要轉換上面的幫助的話,非常樂意!能不能把程式給我研究一下?
問題就在這裏,先把UTF8編碼轉換成GB2312,然後再轉成BIG5,最後轉換成UTF8,這個過程中,會造成一些語言的字符丟失,除非是UTF8簡體直接與UTF8繁體互相轉換,不通過中間過程。不知道我的理解對不對。主要是不能影響到其他語言的顯示。或者可以在上面所說的轉換過程中,只轉換漢字,其他語言的字符可以不轉換--Shizhao (Talk) 15:19 2004年3月6日 (UTC)

可否這樣,只在UTF8內部轉換:

include "class.Chinese.php";
$chs = new Chinese("zh-cn","zh-tw",$str);
$str = $chs->ConvertIT();
echo $str;

另外,維基百科的軟件可以去http://wikipedia.sourceforge.net/ 下載--Shizhao (Talk) 15:24 2004年3月6日 (UTC)

關於有些字會丟失的問題,大部分都還是罕見字,因此問題不大,但說起來的確還有討論的空間……但是這應該不是最重要的問題,因為和漏字的問題比較起來,趕緊實現繁簡並存是最重要的。在程式方面,也許哪位可以 email 給作者請教這個問題:「如果來源碼翻譯之後,目標編碼沒有相對應的字元,能不能這個字就直接忽略,保存原來的UTF8編碼,而不是變成空白?」。這個問題其實應該是很好改進的,只要一點小地方更改即可。不過我不便使用 email ,所以說可能要麻煩各位? Dowba 15:30 2004年3月6日 (UTC)
只在 UTF8 內轉換是做不到的,因為轉換表格只有以下這幾種(以下摘自 Hessian 的 PHP 程式 "中文編碼集合類庫"):

       'codetable_dir'         => "./config/",           //  存放各種語言互換表的目錄 
       'SourceLang'            => ,                    //  字元的原編碼 
       'TargetLang'            => ,                    //  轉換後的編碼 
       'GBtoBIG5_table'        => 'gb-big5.table',       //  簡體中文轉換為繁體中文的對照表 
       'BIG5toGB_table'        => 'big5-gb.table',       //  繁體中文轉換為簡體中文的對照表 
       'GBtoPinYin_table'      => 'gb-pinyin.table',     //  簡體中文轉換為拼音的對照表 
       'GBtoUnicode_table'     => 'gb-unicode.table',    //  簡體中文轉換為UNICODE的對照表 
       'BIG5toUnicode_table'   => 'big5-unicode.table'   //  繁體中文轉換為UNICODE的對照表 

上表顯示的結果,簡體中文和繁體中文間所存在的直接編碼對應關係就只有GB2312和BIG5了,如果說要在 UTF8 底下實現,就必須以 UTF8 編碼作為橋樑不可。 Dowba 15:38 2004年3月6日 (UTC)

其實關於有些字會丟失的問題,主要是考慮到跨語言連結的問題--Shizhao (Talk) 15:49 2004年3月6日 (UTC)

在跨語言連結方面是怎麼樣的問題,我不大清楚? Dowba 03:03 2004年3月7日 (UTC)

對了,如果要解決漏字的問題,我們恐怕就得使用土法煉鋼的方法:把每個簡體(或繁體)中文字所相對應的字列出來,做成一個檔案,然後當使用者 submit 資料的時候逐字翻譯。可是這個工程很耗大呀。 Dowba 04:24 2004年3月7日 (UTC)

我現在進行翻譯試驗,但是一看到程式內部就覺得有點頭昏,因為它使用了相當多的 Class ,恐怕我不大能勝任。能不能請哪位和 WikiPedia 官方比較熟的,請教他們這個樣子:


Our Chinese Wikipedia site now want to adjust the program to save two version's of article, which includes Traditional Chinese and Simplified Chinese, at the same time after submitting.We got stuck when we edit the EditPage.php because of it's complication,the large amount of using PHP class. We can ofter the class using for translate Chinese.And can you help us? Thank you.


上面是我寫的英文,如果真的有人要幫我問的話就麻煩幫我檢查一下文法有沒有錯吧。

Dowba 06:22 2004年3月7日 (UTC)

每一個中文頁面都有兩種字型即可. 只不過每次改的時候都要改兩種字型.


我嘗試在wordpress內用ConvertIT(), 由utf-8顯示的繁體轉作簡體, 以下是修改的code:

$str = the_content(__('(more...)'));
$chs = new Chinese("UTF8","BIG5",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("BIG5","GB2312",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("GB2312","UTF8",$str);
$str = $chs->ConvertIT();
echo $str;

$str = the_content(__('(more...)'));
$chs = new Chinese("BIG5","GB2312",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("GB2312","UTF8",$str);
$str = $chs->ConvertIT();
echo $str;

以上的code並不能把繁轉簡,

但我用了以下的code測試:

$str = "你好嗎編";
$chs = new Chinese("BIG5","GB2312",$str);
$str = $chs->ConvertIT();
$chs = new Chinese("GB2312","UTF8",$str);
$str = $chs->ConvertIT();
echo $str;

以上的code便能把繁轉簡

convertIT似乎不能把the_content(__('(more...)')) 轉換, 是什麼原因呢?

請幫忙!

breakfast


Re:"張三豐"還是"張三丰"

From : Jason ([email protected])

本人有以下提議 以php + mysql 做出自己的對照表

用統一的資料表, 格式如下:

CREATE TABLE `tbl_convert` (
`cid` bigint(20) NOT NULL default '0',
`direction` enum('both','t2s','s2t') NOT NULL default 'both',
`charT` varchar(10) NOT NULL default ,
`charS` varchar(10) NOT NULL default ,
`sortorder` int(6) NOT NULL default '0',
PRIMARY KEY (`cid`)
) ENGINE=MyISAM
** 也可在 charT, charS 上加上index

先找出一份全中文字表, 讀成Array $charaters // 以下假設找到UTF-8的繁體中文字表 include ("class.Chinese.php"); <?php

set_time_limit(0);
foreach($charaters as $k => $v){
$tmp = iconv("UTF-8","BIG5",$v); // $tmp = big5 繁體
$chs = new Chinese("BIG5","GB2312",$str);
$tmp = $chs->ConvertIT(); // $tmp = gb2312 簡體
$tmp = iconv("GB2312","UTF-8",$tmp); // $tmp = utf-8 簡體
$sql = "INSERT INTO `tbl_convert` ( `direction` , `charT` , `charS` , `sortorder` ) VALUES ( 'both', '$v', '$tmp', '500');";
mysql_query($sql);
}

?>


如之前的討論, 當中總有一些錯漏, 但由於所有資料儲下來了,可慢慢改正;

對於 張三丰 / 張三豐的問題, 可加入
INSERT INTO `tbl_convert` ( `direction` , `charT` , `charS` , `sortorder` ) VALUES ( 's2t', '張三丰', '張三豐', '400');

** 補充說明 使用時是以 ORDER BY  `sortorder` DESC 排列的
** 簡->繁 $sql = "SELECT * FROM `tbl_convert` WHERE direction IN('both','s2t') ORDER BY `sortorder` DESC"; or
** 繁->簡 $sql = "SELECT * FROM `tbl_convert` WHERE direction IN('both','ts2') ORDER BY `sortorder` DESC";

還可以再改善地方方言, 如廣東話
INSERT INTO `tbl_convert` ( `direction` , `charT` , `charS` , `sortorder` ) VALUES ( 'both', '耍太極', '打太極', '600');


eg echo s2t(張三丰打太極);
運行結果如下:
1st) 張三丰耍太極 //// sortorder 600 的優先, 500以上是人手輸入的詞語
2nd) 張三豐耍太極 //// sortorder 500 所有一段字元
3rd) 張三丰耍太極 //// sortorder 400 的修正, 500以下是修正用 詞語


結果 : 張三丰耍太極


如有錯漏不足的地方, 還望指正

上述方案由於未有全國字庫而未能動工, 如果 閣位得悉 有關字庫網址的話請留言 成品將發佈GNU 或 像fpdf般可供commerical use 的freeware

Jason
[email protected]