BYVoid / OpenCC

Conversion between Traditional and Simplified Chinese
https://opencc.byvoid.com/
Apache License 2.0
8.48k stars 980 forks source link

根據《古籍印刷通用字規範字形表》及《辭源》設立大陸繁體標準 #697

Open forFudan opened 2 years ago

forFudan commented 2 years ago

新的《古籍印刷通用字規範字形表 GB/Z 40637--2021》第1節寫到:

本文件……也適用於現代書刊的繁體版印刷。

故而可以認爲此文件是一個獨立的規範字的框架和體系,並適用於大陸地區的繁體書籍印刷。

建議依據該文件,設立大陸古籍繁體標準 CNGJVariant,平行於OpenCC默認、香港和臺灣標準。先設立轉換表文件,以供日後可陸續更新。

關於古籍字形的一些總結

以下列出本表對部分字形的選擇,排名不分先後:

注意到本標準只規定了字形,並未規定字的使用。故而在選取優先字時,應該有一個基準。大陸地區在用的傳統漢字體係的辭書中,《辭源》在古籍方面的鍼對性較強,編纂較爲專業,同本《標準》一致性較高,因此可以根據其白話注解部分的實際用字情况選取優先字。

OpenCC 古籍變體取字原則:

順序卽:取《辭源》註解文字實際使用漢字 -> 取本表規定字形 > (可選)進一步分離含義不同的異體字。

關於本標準在 OpenCC 中繁簡轉換的實現:

因爲 OpenCC 的繁體標準基於意義分離原則,故而只需要進行一次額外的 1-1 字符映射(約100行),卽可實行本表中規定的標準。

或直接定義轉換表。https://github.com/forFudan/GujiCC

ayaka14732 commented 2 years ago

StarCC 已經收錄,可以去那裏討論和修正:https://github.com/StarCC0/dict

groverlynn commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

forFudan commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。

至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

groverlynn commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。

至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

forFudan commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。 至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

啊,這是自然,没錯。我這裏主要考慮的是從簡體向繁體的換化。

groverlynn commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。 至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

啊,這是自然,没錯。我這裏主要考慮的是從簡體向繁體的換化。

簡轉繁、繁轉簡也都不應該強行取正字。 以強和强为例 ⭕️T->TW:强->強;T->HK:強->强;S->CN:強->强;其余均不转换 在不拆分CN簡體的情況下將T->S和S->CN兩步合併 ❌S->T:强->強;T->HK:強->强;HK->T:强->強;T->S:強->强

forFudan commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。 至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

啊,這是自然,没錯。我這裏主要考慮的是從簡體向繁體的換化。

簡轉繁、繁轉簡也都不應該強行取正字。 以強和强为例 ⭕️T->TW:强->強;T->HK:強->强;S->CN:強->强;其余均不转换 在不拆分CN簡體的情況下將T->S和S->CN兩步合併 ❌S->T:强->強;T->HK:強->强;HK->T:强->強;T->S:強->强

我對這一點存疑。這可能會造成文章用字體係的混亂。目前的 OpenCC 在事實上是需要確定一個標準字的,是爲了達到用字統一。

forFudan commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。 至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

啊,這是自然,没錯。我這裏主要考慮的是從簡體向繁體的換化。

簡轉繁、繁轉簡也都不應該強行取正字。 以強和强为例 ⭕️T->TW:强->強;T->HK:強->强;S->CN:強->强;其余均不转换 在不拆分CN簡體的情況下將T->S和S->CN兩步合併 ❌S->T:强->強;T->HK:強->强;HK->T:强->強;T->S:強->强

我對這一點存疑。這可能會造成文章用字體係的混亂。目前的 OpenCC 在事實上是需要確定一個標準字的,是爲了達到用字統一。

何谓「用字體系的混亂」?

卽多種異體同時存在段落中。當然,繁-繁的轉換是否轉換異體字是 OpenCC 的基本邏輯,不在本變體的討論範圍。

groverlynn commented 1 year ago

全同異體字,如有兩個及以上同時出現在本表中,取《通用規範漢字表》中對應的繁體字。如取「秘」不取「祕」。

不贊同這條。(首先,祕和秘並非全同異體字,比如秘bì魯、秘bèi姓。) 全等異體字有不少是同为正字(比如雞/鷄),甚至俗字比正字更常用(比如只/衹)。这种情况下就不应该强行取正字。

「秘」字在「神秘」一類詞中,同「祕」同義,故而都可取「秘」。當然可以基於分離原則將「神秘」中的「秘」取「祕」。 至於「不應該強行取正字」的這點,旣然我們製作繁簡轉換,則必須要取異體字其中一個作爲標準字,否則 OpenCC 無法實現轉換。

並不是必須要取一個標準字的。比如TW->HK:雞->雞、鷄->鷄,而沒有必要採用TW->HK:鷄->雞

啊,這是自然,没錯。我這裏主要考慮的是從簡體向繁體的換化。

簡轉繁、繁轉簡也都不應該強行取正字。 以強和强为例 ⭕️T->TW:强->強;T->HK:強->强;S->CN:強->强;其余均不转换 在不拆分CN簡體的情況下將T->S和S->CN兩步合併 ❌S->T:强->強;T->HK:強->强;HK->T:强->強;T->S:強->强

我對這一點存疑。這可能會造成文章用字體係的混亂。目前的 OpenCC 在事實上是需要確定一個標準字的,是爲了達到用字統一。

何谓「用字體系的混亂」?

卽多種異體同時存在段落中。當然,繁-繁的轉換是否轉換異體字是 OpenCC 的基本邏輯,不在本變體的討論範圍。

只可能是因為源文本身就混用多個異體字,轉換後才會保留這些混同用法,而且也應該保留,因為這種情況往往是源文中這些異體字並不是完全等同的。而且這種情況不止會出現在繁-繁互轉中,也會出現在繁-簡甚至簡-簡互轉中。