批馬拉錘「無頭倉頡」

2023年4月4日是一個重要的日子,這一天,愚蠢可笑的馬拉錘發表了他的傑作:無頭倉頡。

廢話警告

倉頡Rhapsody:不分割字首字身的倉頡

作者:馬拉錘

發表於:4-4-2023 22:38:53

文章地址:https://www.chinesecj.com/forum/forum.php?mod=viewthread&tid=195719

雖然普通人可能一無所知,但鄭碼在形碼輸入法界相當有名。

它之所以有名,是因為它首先采用了一種非常不同於其他輸入法的思路。

以「鵏」為例。

大易輸入法是這樣取碼的:
先取出「甫」,「甫」在「6」鍵。
再取出「鳥」,「鳥」在「H」鍵。
因此得出取碼「6H」。

五筆98是這樣取的:
先取出「甫」,「甫」在「S」鍵。
再取出「鳥去掉灬」,「鳥去掉灬」在「Q」鍵。
再取出「灬」,「灬」在「O」鍵。
最後,根據末筆筆形和字形結構補一識別碼。
得出取碼「SQOY」。

但鄭碼輸入法是這樣取的:
先取出「甫」,「甫」雖然在「F」鍵,但是需要用「FB」代表「甫」。
再取出「鳥」,「鳥」雖然在「R」鍵,但是需要用「RZ」代表「鳥」。
得出最終取碼:「FBRZ」。

最後還想提關於五筆86的一些設計。
一些人在學習五笔86時,抱怨為何五笔86的字根要「缺胳膊少腿」。例如,Q鍵上的一些字根就非常典型,「犭」沒了「丿」,「鱼」沒了「一」。
看了上面的幾樓,大家不妨考慮一下這樣設計的理由。假如這些字根不「缺胳膊少腿」,那麼「猎」和「䱜」和「𱇷」、「狗」和「𬶋」和「鉤」、「钓」和「魡」和「𬶄」、「鯉」和「鲤」和「狸」和「锂」和「鋰」…都會重碼

所以,五筆86通過「缺胳膊少腿」的方式,在這幾個部首上模擬了雙編碼。儘管五筆86是公認的單編碼輸入法,但在這幾個部首上卻有雙編碼的特性。

因此,現在
「鲤」取「QGJF」。
「鯉」取「QOJF」。
「锂」取「QJFG」(G為識別碼)。
「狸」取「QTJF」。

但是,由於五筆本質仍然是單編碼輸入法,所以「鋰」和「锂」仍然是要重碼的。

這種設計同樣是有缺點的。因為五筆86打二字詞取每個字的前兩碼,所以「狡猾」、「狼狈」、「狐狸」等字都是「QTQT」,造成大量的重碼。也就是說,在這裏,王永民為了打單字時的方便,捨棄了打詞時的一些方便。

雙編碼的設計,包括倉頡的隱式雙編碼同樣不是完美的,存在一些缺點。這些,也許下次再聊。

蘋果在20世紀末,通過引入NeXTSTEP系統,將其完全定製成Mac OS 9的模樣,作為測試版發佈出來,這個Rhapsody,就是OS X的前身,可以說是一次徹底的改變。

因此,我在這裏也想借用Rhapsody(狂想曲)的名稱,來命名這個倉頡,它就叫倉頡Rhapsody,或倉頡狂想曲。

有些人會感到很奇怪,為什麼要給一個字根兩個編碼,這不是徒增煩惱嗎?

感到疑惑的大家不妨考慮這種情況,如果我們把「礻」和「衤」都放到倉頡的「L」鍵上,會出現什么結果?

很顯然,大量的字會出現重碼,例如
LSH:「𥘉」、「初」
LLWL:「神」、「𫋵」
LG:「社」、「𬡃」
LL:「祌」、「衶」
LOII:「𮁣」、「袊」
………

我們稱這種重碼為「結構性重碼」。

漢字部首繁多,不同的字可能像上例一樣,擁有不同的部首,但其餘部分完全一样。這給輸入法的設計帶來了很大的挑戰。因為,不同的部首,尤其是下轄的字特別多的部首如果放到同一鍵,很容易「撞車」,出現「結構性重碼」。

很不幸的是,美式鍵盤上的拉丁字母只有26個,即使把數字和符號鍵利用於輸入,也只有40多個鍵。但是根據《康熙字典》,漢字有214個部首。假如把這些部首都放到鍵盘上,結構性重碼豈不得上天?即使捨棄掉一些部首,常見的部首仍然非常之多,非常容易撞車。

那怎麼辦呢?

鄭碼採取了一種非常聰明的方法。部首可以在同一鍵上,這個鍵被稱作「區碼」。比如在鄭碼中,「礻」和「衤」都在「W」鍵上。
為了區分它們,鄭碼給它們增加了一個「位碼」。「礻」的位碼是「S」,而「衤」的位碼是「T」。
所以,「初」的完整編碼是「WTYD」,而「𥘉」的編碼是「WSYD」。因此,雖然「礻」和「衤」同佔一鍵,重碼被完美地離散開來。

所以,鄭碼用1至2碼來代表一個部首,這做法相當於模擬了26*26鍵的鍵盤,在這個鍵盤中,組字能力強的部首可以找到它們的去處,不用再撞到一起去了。這種設計被稱為「雙編碼」。

這種設計是非常高明的。因為,這樣設計意味着簡繁部首有區分開來的可能。對於普通的輸入法而言,「設」和「设」幾乎必定重碼,但雙編碼的輸入法則有可能不重碼。只要給「言」和「讠」不同的位碼,它們就可以被區別開來。

雖然鄭碼在設計時並未認真考慮離散簡繁這一點,但是後來許多輸入法借鑒了鄭碼並做出了改進,如徐碼。

有人可能會想到,倉頡輸入法在手冊裏並沒有這樣規定,那麼倉頡是單編碼輸入法嗎?

和表面上看起來的不同,倉頡也是一種雙編碼輸入法。

我們可以想一想我們是怎麼取碼的。首先,我們要先一刀割出字首。儘管字首不等於部首,但是字首經常是一個部首。

然後,我們給字首取碼,最多兩碼。
例如,「課」的字首是「卜口」(YR)。
再例如,「课」的字首是「戈女」(IV)。

我們很容易發現,「言」在作字首時會有兩碼,而且和「讠」不同。
對比鄭碼,我們會發現倉頡雖然沒有作出雙編碼的規定,但一個部件在字首和字身時往往會取固定的編碼,如果把這些編碼列出來,就非常類似於鄭碼的字根表。只不過,這並不要求任何的記憶。倉頡以小字根、字首字身這種很靈活的方式實現了雙編碼。

倉頡的做法有其優點。

通過這種做法,學習倉頡時只要記憶一個很小的字根表就夠了,不用記憶龐大的雙編碼字根表。而且,區分字首字身意味着檢索上有其優勢。例如,字身為「HAF」的字很可能就是帶「鳥」的字。

但是,這種做法同樣有其劣勢。
當一個字為上下形字時,字首字身的划分顯得很麻煩。 例如,「玄」是組合字就很容易令人感到迷惑。
再例如,細微的字形變化也可能導致字首字身出現改變,「無」就是一例。

為了解決這個問題,蒼頡檢字法規定上下型字僅在幾種特殊情況下當成組合字,否則一律作為整體字。但這種做法也有缺點,因為漢字實在太複雜了,幾種特殊情況何時適用又會造成爭議。

不能採用大字根是這種方案的優勢,也是劣勢。因為細微的字形變化就可能導致取碼改變,由此導致重碼增加。

由此,我生出一種想法,即利用鄭碼的規則,但將字根表中的區碼-位碼換成倉頡的頭尾碼。

例如,「贝」在鄭碼中取「LO」,但倉頡頭尾碼是「BO」。
「足」在鄭碼中的區位碼是「JI」,但倉頡頭尾碼是「RO」。
通過這種置換,倉頡字根表退化為一種助記方式,鄭碼也套上了倉頡的皮。
由於鄭碼不用分割字首字身,所以這種方式製造出來的「倉頡」也不用劃分字首字身了。

於是,我通過修改鄭碼的字根表,自動編碼後得出了以下的編碼:

個 owjr
倌 ojrr
倍 oyr
倎 obtc
倏 olki
倐 olhf
們 oan
倒 omln
倓 off
倔 osuu
倖 ogtj
倗 obb
倘 ofb
候 olso
倚 okmr

可以看到,上述的編碼和倉頡原編碼有很大的相似度。

通過這種方式,原倉頡用戶可以很快地學會這種方案。

但是,我又發現鄭碼的一些編碼方式,尤其是在三基根字中可能會造成比較嚴重的繁簡重碼,與原版倉頡也相差較大。

例如,按鄭碼規則,

「測」→「氵貝刂」,如果套用倉頡的頭尾碼,全碼會是「E BC LN」,簡省後是「EBLN」(水月中弓)。

「测」→「氵贝刂」,如果套用倉頡的頭尾碼,全碼會是「E BO LN」,簡省後是「EBLN」(水月中弓)。

兩者出現重碼,也和原版倉頡有一些差異。

但如果修改成三基根字取頭+頭尾+尾的話,就會是「EBCN」(水月金弓)和「EBON」(水月人弓)了,不仅和原版倉頡一致,還避開了重碼。

按這種規則,上述示例的編碼是:

個 owjr
倌 ojrr
倍 oytr
倎 obtc
倏 olki
倐 olhf
們 oan
倒 omin
倓 off
倔 osuu
倖 ogtj
倗 obb
倘 ofib
候 olso
倚 okmr

 

尹評

命名

首先評論它的命名,馬拉錘把它命名為「倉頡Rhapsody、倉頡狂想曲」,這符合了馬拉錘一貫的搞笑風格,但不太好記。既然馬拉錘宣稱這是一個不用分割字首字身的倉頡,那麼往下我將把它稱作「無頭倉頡」。

最大的問題

無頭倉頡最大的問題就是:它並沒有做出來,而是只寫了篇語氣活潑的介紹文章。

Read more

快訊:倉頡群組有人提出「過」的問題,ichirou至今保持沉默

今年3月,有人在ichirou創建的倉頡輸入法群組提出了以下問題: 既然ichirou認為現在鴨脖作為倉頡三代和五代字元已經是鐵證如山了,為何不出來科普一下? ichirou如果要回答這個問題,他就需要解釋「咼」是連體還是分體,三代和五代倉頡是否存在鴨脖。直達他內心最痛之處。 我多年以前就說過,ichirou過份激進的推出這種違背傳統、違反常識的理論,遲早會翻車的。

慶漢文庫典恢復正常,暨翻到多個錯碼

漢文痛典自去年以來字體變成了細圓體,所有非基本區字的頁面均不能顯示。近日發現其已恢復正常,多愁善感的ichirou想必能鬆口氣了。

那麼頁面恢復正常之後,我要找它的錯碼就方便多了。下面是寡人新找到的錯碼。

禾口口

這個少了個「中」,查之六代有這個字根,六代編碼也是HDRR

Read more

快訊:騎沈四傑至今搞不懂「悳値陋」的結構判定

根據大馬倉友一個2022年10月29日的帖子,可知騎沈四傑至今搞不懂「値」字的結構判定。

糊塗蟲蓼汀花溆說「値」的「十」可能連上「目」也可能沒連,我當時如果能用「悳」的漢文庫典編碼甩他臉上,不知道他會作何反應。

早在2016年甚至更早,我就見他們在討論「県」這些字的結構判定,想不到多年以後,他們還是完全沒有搞懂。這麼多的人,這麼長的時間!

Read more

騎沈四傑2024年度總結

騎沈四傑指ichirou、馬拉錘、CEKU、cj6,由於CEKU隱退,他的位置由jackchows頂替。

成員介紹

  • ichirou:facebook倉頡群組管理員,大馬倉友論壇管理員。I.明體作者。性情暴躁,智商偏低,因此常鬧笑話,多次摔跤。現已不敢隨便對倉頡規則發表意見。
  • 馬拉錘:大馬倉友管理員,三代補完計劃作者。為人酷似小丑,取名亦似小丑,他以為這樣幽默搞笑好玩。陰險狡詐,然而身體健康欠佳,終將病亡。
  • CEKU:維基倉教主編。擅長創造文字垃圾。思維能力極差。知錯不改,越陷越深。其為體現他的「中立」,下架剪刀原則以及一衆複合字首,致使ichirou和cj6顏面盡失。
  • cj6:污言穢語,不三不四。是騎沈四傑的罵人工具。由他自創的「書法結字」因為名稱和內容都有欠妥當,現在已經停止向民衆宣傳。

補充成員:

Read more

新ubuntu2404,新尹倉1120

Ubuntu24.04

每次ubuntu系統出新版本,我的更新都是滯後的。最新的ubuntu2404.iso已經超過6G,估計是因為加入了大量中文字體致使體積大增。我十多年來一直當作系統盤的4個G的U盤再也裝不下了,最終我決定把一個32G的U盤當系統安裝盤。

昨晚研究了multibootUSB好久,最終引導不進。索性直接dd進去,浪費就浪費吧,現在我也沒空沒興趣玩這麼多系統了,最多再加上

Read more

ichirou跟ceku的討論為何會戛然而止?

下面的帖子來自這裏,主體為ichirou發表個人意見,ceku參與討論。

匯整可堪商榷的編碼

ichirou:

發表於 26-4-2020 17:29:20

倉頡輸入法是最有理的字形輸入法(形碼),對不同的字都能用同一套規則取得唯一的編碼,一視同仁,客觀可信。只要熟悉倉頡輸入法的規則,基本上人人都對任何漢字能取得相同的編碼。這點亦對索引、排序非常有利。其他形碼大多做不到這點,編碼有許多主觀元素,跟該輸入法說明的規則自相矛盾,或者往往對同一字形取出多種編碼,令用戶不知哪個才是正統取碼,無所適從。

當然,世事沒有完美,即使倉頡輸入法已經是最有理、規則最一致的,絕大部份漢字的取碼都毫無問題,也免不了有少數漢字的取碼還可以再深究或商榷。本帖中,我嘗試把已知的都窮擧出來。大家或深入硏究,或發現在下漏洞能指點迷津,或在日後維護碼表與規則時加以修繕等等,只要是理性使用,都無任歡迎。

不過我得先說明,所謂瑕不掩瑜,即使這少數漢字取碼可以商榷,這不代表倉頡的編碼規則有明顯問題。相比之下,其他形碼輸入法往往不能依據同一套規則取得唯一編碼,也許要看發明人的主觀,也許只有一堆取碼大包圍而不知哪個正統,問題都比倉頡輸入法嚴重得多。

以下是我想到的或看到其他人商榷過的取碼:(vs前方是官方取碼)

曰:日 vs 田一

輔根獨立成字時,基本上是要分割取碼的。除非該輔根眞的無法再分割。基本上,大家都視「曰」形爲「日」形的輔根,按理應分割爲「田一」。
從維基敎科書主要編輯ceku的信函(https://zh.wikibooks.org/wiki/Talk:%E5%80%89%E9%A0%A1%E8%BC%B8%E5%85%A5%E6%B3%95/%E4%BF%A1%E5%87%BD/20180923)得知,沈紅蓮女士視「日」與「曰」同形,兩者無分主輔,因此皆取「日」。竊以爲「曰」與「日」並非完全同形,「曰」第三筆橫筆的左右相觸跟「日」未必相同,因此此說未必可從。

囗:月一 vs 月山

朱邦復先生發明倉頡時,以「剪刀原則」作爲拆字取碼的原理。對照「目」字,「月山」比「月一」更易剪出來,因此「目」字取「月山」比取「月一」符合剪刀原則。同理,「囗」字也應當取「月山」而非「月一」,可是官方卻編了「月一」。
後來蒼頡檢字法中,「囗」也的確改爲「月山」,不支援「月一」。似乎反映「月山」更合理。

灬:竹火 vs 火戈

輔根獨立成字時的分割問題。官方從左邊第一道縫切下去取「竹火」也非不合理。但一般來說都視這輔根不再分割。因此有不分割並基於先繁後簡原則的取碼「火戈」。

忄:竹卜 vs 中金

輔根獨立成字時的分割問題。官方從左邊第一道縫切下去取「竹卜」也非不合理。但一般來說都視這輔根不再分割,尤其是若它視作可以再分割,會令許多「忄」部的字由「左右形⿰」變成「多列形⿲」。而且「忄」的中豎這麼突出,可比照「小、巾」等字,由上至下,先取中間筆畫(其中「小」字也不分割,以整體字的方式取碼)。因此有不分割並基於由上至下原則的取碼「中金」。

氵:戈戈一 vs 卜一

輔根獨立成字時的分割問題。官方從左邊第一道縫切下去取「戈戈一」也非不合理。但一般來說都視這輔根不再分割。因此有不分割並基於先繁後簡原則的取碼「卜一」,可比照「斗、头」等字。

乂:大 vs 竹人

輔根獨立成字時的分割問題。官方不分割,直接取「大」。後來蒼頡檢字法中,則分割成「竹人」。

婁:中中.女(五代) vs 中田中女(三代) vs 十田日女
相關字:樓、縷、摟、嘍、㜢、簍、蔞、嶁 等

三代視爲整體字,但似乎取了異體「」(上方作「申」形)的寫法,沒有處理橫筆左右穿頭的「⯐」形寫法。五代視爲分體字,取「中中.女」,則似乎依香港敎育參考寫法。但以此字最常見的寫法而言,它應爲整體字,而且上方「⯐」形橫筆左右穿頭。擴展區的「U+20DAD」和「U+2E3F3」也含有「⯐」部件,倉頡取碼不能迴避它。
比照「曲、丳、西、衰、貫」等字,豎筆和橫筆跨越「囗」形是可以的,否則「曲」也不能取「廿田」要取「中中田廿」;「丳」也不能取「中中田田」而要取「中中田中」,不省略則是「中中(丨丨)田中中(罒)中中(丨丨)田中中(罒)中中(丿丨)」;「貫」的字首也不能取「田十」而要取「田一一」。這就恐怖了。
因此,「婁」也應可允許「十」的橫筆與豎筆跨越「囗」形,取「十田日女」。「⌖」部件單獨出現時取「十田」。

韭:中尸一一(五代) vs 中一一一(三代) vs 廿廿廿一
相關字:韮、韲、虀、齏、韯、韱、纖、鑯、籤 等

三代是先取「非之左」,再取「非之右」,最後取底橫,不省略則是「中一一一中一一一一」。五代則依由上至下原則,左右兩邊梅花間竹。但兩種取法都未遵從精簡原則。「韭」這整體字取「廿廿廿一(⻀⻀⻀一)」爲最精簡者。而且「㐀」取「廿一」,「韭」取「廿廿廿一」的話亦能互相對照。
根據維基敎科書主要編輯ceku的信函,沈紅蓮女士回信時說「廿廿廿一」亦可,只是覺得和「非」取碼相差較遠。可是「非」是左右形組合字,「韭」是整體字,兩者不能類比。

甴:中田中一 vs 中田一

官方的取碼,把「囗」外的豎筆與「囗」內的豎筆分成兩斷。但比照「曲、丳、西」等字,豎筆跨越「囗」形是可以的(說明見上方「婁」字條)。因此應取「中田一」,不應把豎筆截斷。否則反而會跟規律不一致。

亞:一中中一 vs 一中中廿
相關字:啞、婭、惡、堊、壺、壼、斲、鬬、鬭 等

官方的取碼把「亞」字拆得很散,先取頂橫「一」,再取兩豎「中中」,接着取「匚コ」之形「尸尸」,再取兩豎「中中」,最後取底橫「一」,全字不省略的話取「一中中尸尸中中一」,按原則省略則是「一中中一」。
然而,底部的「中中一」,其實就是「廿」的輔根「ㅛ」。「亞」字不取「ㅛ」有違精簡原則。故應取「一中中廿」。Cj6兄認爲這是「ㅛ」字根後來才有,更新時官方想不到「亞」字的結果。
除非我們把「亞 去掉 二」設定爲輔根或複合字,或者把「亞」字設定作難字取「一難一」,才有理由直接取它而不取「ㅛ」。後來蒼頡檢字法中,直接把「亞 去掉 二」設爲「止」(即倉頡五代/三代的「難」)。

亜:一中中一 vs 一廿田
相關字:唖、悪、壷 等

官方取「一中中一」,似乎首橫和尾橫皆取了「一」,中間部份則取了「中中……(被省略)」,基於省略原則,不完全確定官方怎麼取。不知會不會是分成「兩豎、罒、兩豎」三部分,取「中中田中中中中」。
然而,比照「曲、丳、西」等字,豎筆跨越「囗」形是可以的(說明見上方「婁」字條)。因此「亜」故取「一廿田(一ㅛ囗)」即可,這亦符合精簡原則。

丂:一女尸 vs 一尸
相關字:兮、巧、朽、㱙、粵、粤、㕺、亏 等

雖然倉頡輸入法有轉角分則,但只在不增加取碼數時才適用,如「东」取「大木」不取「大女木」,「专」取「手弓戈」不取「手女弓戈」。按此,「丂」應取「一尸(丆㇆)」,但官方卻取了「一女尸」,跟規律不一致。
格瓦拉說過,五代/三代取碼時,把「丂」字第二筆視爲「豎橫撇鈎(㇉、豎折折鈎)」而非「撇橫撇鈎(ㄅ、撇折折鈎)」,而倉頡沒有「丅」這字根或輔根,因此怎也會取三碼,就當應用轉角分則,取「一女尸」而非「一中尸」了。
不過以此字最常見的寫法而言,它的第二筆應爲「撇橫撇鈎」,因此也應可取「一尸」。後來蒼頡檢字法中,「丂」也的確改爲「一尸」,不支援「一女尸」。

癶:弓戈.卜人 vs 弓戈.竹人/弓戈.人竹

官方取「弓戈.卜人」,視右邊兩撇爲「卜」。然而「卜」無此輔根,這是官方出錯。否則,像「形、髟」的右旁也得取「卜」。
若依正常字根拆字,「癶」右旁有人取「竹人」(較符合字形特徵原則),有人取「人竹」(較符合先繁後簡原則)。我主張取「竹人」,不然的話「癶」作爲字首時就要由「弓人」改爲「弓竹」,會影響「發、癸、登」等相關字。格瓦拉也主張取「竹人」。
後來蒼頡檢字法中,「癶」的右旁直接作爲「人」的輔根。似乎反映五代/三代原取碼有誤,這也是一種解決方法。

廴:弓弓大 vs 弓水
相關字:延、誕、涎、建、健、廷、挺、廼、廸、廻 等

官方取「弓弓大」而不取「弓水」,ArthurMcArthur懷疑較早版本倉頡的「又」(「水」的輔根)不允許開口所致。但比照五代/三代其他字,無論「又」的左上角是否開口,都可以取「水」碼。「廴」字拆成「弓水」,就不一致了,並且違反了精簡原則。
後來蒼頡檢字法中,「廴」也的確改爲「弓水」,不支援「弓弓大」。似乎反映「弓水」更合理。

毋:田十竹 vs 田十

五代官方的取碼,把「」外的直撇與「」內的直撇分成兩斷。但比照「曲、丳、西」等字,豎向筆畫跨越「」形是可以的(說明見上方「婁」字條)。因此應取「田十」,不應把直撇截斷。否則反而會跟規律不一致。
三代官方則取「田十」。

曱:田一中中 vs 田一中

官方的取碼,把「囗」外的豎筆與「囗」內的豎筆分成兩斷。但比照「曲、丳、西」等字,豎筆跨越「囗」形是可以的(說明見上方「婁」字條)。因此應取「田一中」,不應把豎筆截斷。否則反而會跟規律不一致。

五代字首分割爭議編碼

因實務考量,「撇捺形狀」或「蓋子形狀」字形,如「人」、「八」、「大」、「夭」、「天」、「冖」、「宀」、「癶」、「春之頂部」、「龹」、「夂」、「旁之頂部」、「孛之頂部」、「囊之頂部」、「㥑之頂部」、「學之頂部」等等,雖輕微遮住下部字形,仍統一將其下緣視為可一刀分離,如「貧」之字首取「八」不取「分」、「奮」之字首取「大」不取「奞」、「喬」之字首取「夭」不取「呑」等等。換言之,「微曲上下形結構」與「上下形結構」是一樣的。

三代手冊有明確提及此判定原則;五代手冊移除了相關敘述,大多數「撇捺形狀」或「蓋子形狀」字形的下緣仍比照三代視作可以「一刀分離」,不過有些「癶」、「春之頂部」、「夂」、「旁之頂部」字形下緣改作視爲不可以一刀分離。然而五代改碼不統一,不少字並無此更動。換言之,「微曲上下形結構」多數情況下仍與「上下形結構」一樣,但有個別(不是全部)以「癶」、「春之頂部」、「夂」、「旁之頂部」開首的漢字有所改變。

五代中「癶」、「春之頂部」、「夂」、「旁之頂部」字形下緣視爲不可以一刀分離的有:夆、夅(但有例外)、各、备、冬、登、春、秦(但有例外)、舂、帝 等。視爲可以一刀分離的有:㚅、贛之右旁、癹、癸 等(還有一些字例,因本論壇不支援擴展區B及以上的漢字,無法顯示,從略),顯得十分混亂。五代手冊於介紹字首字身時,提到按「於可橫向一次截然分離處分出字首」的原則,視「螽」的字首是「冬」(而非「夂」),但另一例字「基」則以「其」爲字首,視「撇捺形狀」下緣可以一刀分離,與「冬」似乎牴觸。《倉五手冊》電子版自2003年於網上公開後,就一直把「登、春」列爲複合字首,而印刷版(及pdf版)則一直沒有如是作。可見官方自己也自相矛盾。

六代倉頡相關字除改用新規則處理以外,皆取消了五代的這種變動,改回三代的做法。竊以爲五代這些字首分割改變皆不可取。

「羗」形
相關字:鬼(五代)、U+2A781 等

像「羗」字,官方視「羌」爲字首,「厶」爲字身。但這字首字身比例太懸殊。整體字的釐定原則「字形筆畫雖非全部交連,但形勢上爲一完整個體者。」且比照U+2A6BE、U+2A6BF、U+2A6C3等字,完全可以把「羗」形的字視爲整體字取碼。

龍闖中原:

發表於 26-4-2020 21:27:29

我認為碼表應该統一,以官方的爲凖,要错大家都错成一样,其他再好也不用。就像86五筆一样,码表统一,大家都以86码表為准,虽然还有缺点,但用户都能视而不见,使用也不会造成困惑。

ichirou:

發表於 27-4-2020 06:33:10

個人不能苟同「用户都能视而不见,使用也不会造成困惑」,這只是宣揚盲從死背而已。

而倉頡輸入法並不鼓勵盲從死背,強調對不同漢字都一視同仁,依同一套規則。上述這幾點,許多也不是在下提出的,是過往這麼多年的討論裏各位不同的倉頡朋友提出的。

當然提出不等於一定對,這點要經過大家的深入思考和討論。過往一些有人提出了,但論證上站不住腳,有許多反證,或者在立論過程中歪曲了官方說明規矩的,在下都撇除了,不會列於本帖中。

不過我也同意,即使官方取碼或有可斟酌處,但若沒有官方修訂,或沒有大型且有共識的代表性維護計劃之修訂,要理解這些編碼,仍主要以原來的官方拆碼說法爲根據。

換言之,這帖子串裏提及過的字,哪怕怎麼有道理,也只是爲未來所作的提案芻議,不應在現在就把當中的分析看成拆碼標準方法。

ceku:

發表於 7-6-2020 10:00:45

這論壇好像找不到引用語法的功能?就先簡單回一下,簡陋勿怪:

曰:日 vs 田一

竊以爲「曰」與「日」並非完全同形,「曰」第三筆橫筆的左右相觸跟「日」未必相同,因此此說未必可從。

倉頡輸入法原則上應該不會把水平或垂直的縮放視為不同字形,否則試想「車」、置左的「車」、置下的「車」都視為不同字形,會成為什麼光景?

此外有些文獻的「曰」看起來是比較瘦長的,字形上也和「日」難以區分。例如:

(出自異體字字典https://dict.variants.moe.edu.tw/variants/rbt/word_attribute.rbt?quote_code=QTAxODMw)

我認為沈女士的說法大致是可以接受的,且基於相容性考量,能不改就不改,因此建議維持原取碼即可。

囗:月一 vs 月山

朱邦復先生發明倉頡時,以「剪刀原則」作爲拆字取碼的原理。對照「目」字,「月山」比「月一」更易剪出來,因此「目」字取「月山」比取「月一」符合剪刀原則。同理,「囗」字也應當取「月山」而非「月一」,可是官方卻編了「月一」。
後來蒼頡檢字法中,「囗」也的確改爲「月山」,不支援「月一」。似乎反映「月山」更合理。

「剪刀原則」要怎麼應用一直都有模糊空間存在……如果說「目」比較容易剪出「月」「凵」,為何不能說「且」比較容易剪出「月」「廿」?

灬:竹火 vs 火戈

輔根獨立成字時的分割問題。官方從左邊第一道縫切下去取「竹火」也非不合理。但一般來說都視這輔根不再分割。因此有不分割並基於先繁後簡原則的取碼「火戈」。

有可能當初設定「火」的輔助字形只有「點點點」,因此「灬」的「撇點點」不適用。但是否要計較如此細微的差異,也是可以討論。

乂:大 vs 竹人

輔根獨立成字時的分割問題。官方不分割,直接取「大」。後來蒼頡檢字法中,則分割成「竹人」。

「乂」當初不分割可能是為了保留「交叉」的字形特徵,及按區塊原則避免字根互相跨越。

蒼檢改碼可能是沈紅蓮和朱邦復想法不同所致,但新取碼除了遺失字形特徵以外,尚有另一爭議是為何取「竹人」而不取「人竹」?雖說寫字時一般先寫撇再寫捺,但按倉頡取碼原則,筆晝孰高孰低無絕對標準時,應由左而右取碼,因此似乎是後者比較合理。

我個人比較支持按原設計取一碼「大」。

癶:弓戈.卜人 vs 弓戈.竹人/弓戈.人竹

若依正常字根拆字,「癶」右旁有人取「竹人」(較符合字形特徵原則),有人取「人竹」(較符合先繁後簡原則)。我主張取「竹人」,不然的話「癶」作爲字首時就要由「弓人」改爲「弓竹」,會影響「發、癸、登」等相關字。格瓦拉也主張取「竹人」。
後來蒼頡檢字法中,「癶」的右旁直接作爲「人」的輔根。似乎反映五代/三代原取碼有誤,這也是一種解決方法。

取「竹人」的問題是如何符合字形特徵原則?目前整理出來較具體的「區塊」、「轉角」、「跨越」看起來都不適用。

甴:田一中中 vs 田一中

看起來似乎是「曱」的筆誤?

「羗」形
相關字:鬼(五代)、U+2A781 等

像「羗」字,官方視「羌」爲字首,「厶」爲字身。但這字首字身比例太懸殊。整體字的釐定原則「字形筆畫雖非全部交連,但形勢上爲一完整個體者。」且比照U+2A6BE、U+2A6BF、U+2A6C3等字,完全可以把「羗」形的字視爲整體字取碼。

若按此說,五代的「鬼」恐怕也應該視為整體字取「竹田竹戈」,而不是「竹山.戈」。

卵:竹竹尸中戈 vs 竹竹尸卜

官方給「卵」字取碼時,「卜」字根的豎與點可能不能分離。但比照「鸟」字,豎和點分離仍然取「卜」。因此「卵」也應取「竹竹尸卜」,以符合精簡原則。「孵、毈」等字同理。

「鸟」首碼取「心」和次碼取「卜」似乎都是為了方便簡化字取碼而擴充了原有的輔助字形,但擴充輔助字形往往就忽略了對既有字的影響……。

整體來說,倉頡輸入法有個頗大的先天問題是它其實就是「先射箭再畫靶」,所有取碼規則可說都是為了把常用部件的取碼平均分配而歸納(或說硬湊?)出來的,因此往往為了平均和降低重碼的需求調整既有規則,但調整東就忽略了西,導致很多內在矛盾,五代後期和六代的許多新規則尤其明顯……。

ichirou:

發表於 14-6-2020 01:18:13

卵:竹竹尸中戈 vs 竹竹尸卜

官方給「卵」字取碼時,「卜」字根的豎與點可能不能分離。但比照「鸟」字,豎和點分離仍然取「卜」。因此「卵」也應取「竹竹尸卜」,以符合精簡原則。「孵、毈」等字同理。

ichirou:

發表於 14-6-2020 02:54:12

我知道「倉頡輸入法原則上應該不會把水平或垂直的縮放視為不同字形」啊。關於「日」字,我說的是:『「曰」第三筆橫筆的左右相觸跟「日」未必相同』。像你貼出的圖,「日」與「曰」正是由橫筆有沒有與豎筆相觸區分,不從它的寬與扁。

「且」不剪作「月廿」,跟「印」的字首不剪作「人心」,「哉」的字首不剪作「土戈」相類,當兩種剪法都不違反各原則時,就用較少剪開筆畫的剪法。不過未嘗試窮盡相關漢字思考可有反例,有待大家以事實硏究。

「火」也有這種可能。不過按後來的應用,還維持這樣就不太合理。

「乂」我個人也贊成取「大」。

「癶」的右旁比照「戶」和「歹」,橫剪和斜剪後,兩種剪法都不違反各原則時,就用橫剪。不過我也認爲這個比較大爭議,說不好定它作複合字會更簡單解決。

「曱」的筆誤已修改。

如果未來會做大整理,作爲與舊版有一定不同的新版本,我同意「鬼」和「羗」等視作整體字。反正「龜部首的僻字」如「U+2A6A7 弓日尸中」、「U+2A6BE 弓日尸金」、「U+2A6BF 弓日尸十」、「U+2A6C3 弓日尸尸」都已經如此,也避免跟「兔」、「U+26351」相比時的不習慣感。

我個人反對把取碼方法說成是「先射箭再畫靶」,這是不同概念吧。有些時候在取碼時,發明人確會顧此失彼,才出現這種問題。這也不是倉頡獨有,像五筆王碼等其他形碼,都有一些類似的例子。

ceku:

15-6-2020 22:25:58

我知道「倉頡輸入法原則上應該不會把水平或垂直的縮放視為不同字形」啊。關於「日」字,我說的是:『「曰」第三筆橫筆的左右相觸跟「日」未必相同』。像你貼出的圖,「日」與「曰」正是由橫筆有沒有與豎筆相觸區分,不從它的寬與扁。

第一,你說的「日」「曰」橫筆差異我不明白,有圖解嗎?

第二,就算有,這差異恐怕也是極其細微,別說十個人可能有九個看不出來,甚至明體、楷體等不同書體搞不好也有差異,那要視不同書體取碼嗎?我認為視作同形恐怕還是比較合理。

「且」不剪作「月廿」,跟「印」的字首不剪作「人心」,「哉」的字首不剪作「土戈」相類,當兩種剪法都不違反各原則時,就用較少剪開筆畫的剪法。不過未嘗試窮盡相關漢字思考可有反例,有待大家以事實硏究。

這題我之前提出過,如果引入此原則,那麼「巳」取「口山」而非「尸山」就會成為反例。

而且,此原則如果成立,那麼「目」、「囗」恰恰更應該取「月一」勝過「月山」。

其實官方曾經過過「目」是複合字,這樣或許更好圓說。但傳統上複合字都是自成單位,並與週邊筆畫強制分離,比如「幾」強制分成「女戈.竹戈」,而不是比照「戍」取「戈竹.戈」的邏輯取「女竹.戈」。若採此說,「貝」、「見」等字的取碼都得重新理解成「月山.金」、「月山.竹山」,可能會影響一些字的取碼。

「火」也有這種可能。不過按後來的應用,還維持這樣就不太合理。

後來的應用是指什麼?我想到的例子是主要是簡化字頭「𭕄」(點點撇)。要解釋的話,這可以視為「點點點」手寫時為向下連接「冖」,而自然轉成的類撇筆,本質上還是「點」。但「灬」就不太一樣了,手寫筆順確實是先一「撇」再三「點」,不太能和前者類比。

「癶」的右旁比照「戶」和「歹」,橫剪和斜剪後,兩種剪法都不違反各原則時,就用橫剪。不過我也認爲這個比較大爭議,說不好定它作複合字會更簡單解決。

視作複合字可以解決衍生字取碼問題,不過「癶」就必須改碼為「弓人」了。

之前有個說法是視為「卜」追加兩短撇的輔助字形,因為是與「⺀」類似的兩短撇,因此不須適用「彡」形。這說法有什麼大問題嗎?

另外說到這種字形,「𭕄」為什麼取「戈戈竹」而不是「戈金」或「金戈」也會是個議題。

ichirou:

發表於 19-6-2020 16:59:40

1.
傳承字形一向區分,「日」、「曰」不同形。上「日」下「曰」,無論寬或扁,橫筆不同是區分點。
https://www.chinesecj.com/forum/data/attachment/forum/202006/19/165547enyxiomiiniinxrz.png

2.
「巳」取「尸山」就違反了區塊原則。就像「向、戶、歹」等,橫向剪開是比較理想/優先的。「巳」取「尸山」就跟此違反了。

但「印、哉、且」不同,它們的官方取碼並無違反。「巳」並不是它們的反例。

至於你說「目」,則是轉角分則,是另一個問題。

ceku:

發表於 19-6-2020 18:24:19

1.
傳承字形一向區分,「日」、「曰」不同形。上「日」下「曰」,無論寬或扁,橫筆不同是區分點。

哪個傳承字形?有確切的文獻證據提到這個區別嗎?

我也看過不少不作此區分的字體,比如全字庫正宋體、全字庫正楷體、標楷體、華康魏碑體等等:

https://www.chinesecj.com/forum/data/attachment/forum/202006/19/180334bwayivyj5lzgaj1y.png

再查異體字字典的「日」,也有文獻是用你所謂「曰」的寫法,如下圖最上面的字:

因此我傾向認為此二字並無此區分,那只是部分字體製作者的做法。

2.
「巳」取「尸山」就違反了區塊原則。就像「向、戶、歹」等,橫向剪開是比較理想/優先的。「巳」取「尸山」就跟此違反了。

但「印、哉、且」不同,它們的官方取碼並無違反。「巳」並不是它們的反例。

至於你說「目」,則是轉角分則,是另一個問題。

無論是所謂的區塊原則或剪刀原則,它們的意思都只是「優先選擇字根不互相交錯的取碼方式」,並沒有所謂橫向剪開比較優先之類的意思。「巳」無論取「尸山」或「口山」,字根之間都只是相接而無交錯,因此與區塊原則無關。

我無法保證後者不存在,但我沒有在官方手冊中明確看到過。三代手冊沒有提;五代手冊有「巳」、「民」兩個字例,但它混在「完整原則」裡談,只能看出官方確實認為切出「口」較能保留字形特徵,無法區分具體是根據什麼原則。

轉角分則只適用於連續筆畫,「目」的兩豎和底橫並非連續筆畫,因此和轉角分則無關。

 

那麼,這個討論為甚麼會戛然而止?請看我的分析。

一,ichirou的「剪刀原則」遭到強烈反對

由ichirou原創發明的幼稚可笑的「剪刀原則」遭到ceku無情的批判,ceku說「剪刀原則沒法應用」,直接打中ichirou的七寸。這使得愛面子的ichirou不得不停止跟ceku的公開對話。

Read more