使用正體中文記錄文章
倉頡輸入法是什麼
倉頡輸入法是常用的中文輸入法,由擁有「中文電腦之父」美譽的朱邦復於1976年創製。
初期只有正體中文版,原名「形意檢字法」,用以解決漢字輸入、字形輸出、內碼儲存、漢字排序等電腦處理漢字的問題。
朱邦復發明此輸入法時正值他為三軍大學發展中文通訊系統之際,時任三軍大學校長的蔣緯國為紀念上古時期倉頡造字的精神,
乃於 1978 年將此輸入法改名為「倉頡輸入法」。
1982 年,朱邦復公開放棄倉頡輸入法專利權,使倉頡自由流行於中文世界。
大部分作業系統都會附帶倉頡輸入法程式,在正體中文環境裏是流行的中文形碼輸入法。
倉頡的歷史
1973 年春,朱邦復回到臺灣想要改良中文打字機,研究中文檢索方式。
花了約三年時間,並且在研究後期國立臺灣大學中文系專業畢業生沈紅蓮女士
擔任助手,於 1976 年底發佈「形意檢字法」,最初使用52個中文字母作檢索字母,每個漢字分拆成3個字母的編碼。
當時,三軍大學需要無給職人員發展中文通訊系統,40歲的朱邦復立即接受此一職務,之前並不懂計算機的他至此才開始接觸程式語言。
1978 年8月,朱邦復和助手沈紅蓮重新規劃拆取字根的方法,採用「首二身三」的規則,
使檢索字母數由52個減至26個,以適應一般電腦鍵盤。
在減省字母前,原先的設計是在同一鍵中安置兩個中文字母,以 Shift 鍵區分兩者。
1979 年,三軍大學的有綫短程中文通訊實驗成功,朱邦復實現以中文字母作爲內碼,儲存漢字字矩資訊,解決電腦處理漢字的問題。
時任三軍大學校長的蔣緯國先生爲其授名「倉頡輸入法」。
同年12月朱開始與宏碁電腦合作,開發內建程式語言、中文系統及應用軟體的「天龍中文電腦」,翌年起在市面上銷售,備受市場歡迎。
此中文系統以倉頡碼為其根本,收字數萬,效率甚高。朱邦復因此獲頒發「行政院長獎」。
朱邦復繼續改進倉頡輸入法。同年,由他成立的零壹公司發表第二代倉頡輸入法,使用在他爲 Apple II 電腦設計的「漢卡」產品上。
「漢卡」爲該機提供中文介面,售價新台幣1500元,使得華人利用電腦處理中文的成本更低。
1982 年,朱邦復在《康熙字典》裏選取四萬多字,改良第二代倉頡,使它適應大字集的輸入,並把成果發表爲第三代倉頡輸入法。
同年,他登報公開放棄倉頡輸入法專利權,並且極力推動電腦之中文化。
現今大部分作業系統,甚至一些電子辭典皆附有倉頡輸入法,為正體中文世界最普及的形碼輸入法。
第三代倉頡的區碼方式就已經和今天的五代倉頡相差無幾了。
朱邦復本來想根據其「漢字基因」理論,建立一套「倉頡系統」,用倉頡碼統一處理漢字的形、音、義、碼、序、辨等六大問題。
其中倉頡碼的原始目的是漢字檢索及排序,其取碼具有字首及字身的概念,
以字首做為分類,字身做為補充,如此便可讓電腦「理解」漢字,進而達到組字、字義理解,甚至與人溝通的功能。
由於本以漢字檢索為目的,倉頡取碼依據視覺辨識原理,能反映漢字的細微特徵,同一漢字的不同字形或異體字,
許多時都會有不同的編碼,因此重碼率為當今中文輸入法最低者。
倉頡輸入法亦為一般系統中支援字庫最大者,幾乎所有系統可見的漢字,皆可用倉頡輸入法(系統)鍵入,
因此也成為漢字文化工作者選用的主要輸入法。
然而,當今主流電腦系統只提供倉頡輸入法,沒有採用整套倉頡系統,
因此許多原先的設計理念,如倉頡內碼、字型產生器與極大字庫等,都沒有實現。
倉頡輸入法開發時間較其他中文輸入法早,作者又早早放棄了專利權。使其在中文世界十分普及,
號稱「只要有中文系統,就必定有倉頡輸入法存在」,所以人們學習倉頡後,理論上不用擔心無法使用它。
此外倉頡的重碼率為所有中文輸入法中最低,使用者只需要看著稿子或鍵盤就能打字,不需緊盯著螢光幕來選字,實現「盲打」。
它對漢字的拆分規則清晰嚴謹,只要熟悉拆碼規則,絕大多數漢字的拆碼都沒有爭議。
倉頡輸入法支援的字庫極大,能輸入幾乎所有系統能呈現的漢字。
最新版本
目前倉頡輸入法通行的最新公開版本是第五代,而流傳最廣泛、最常使用版本是第三代。
朱邦復的多年助手沈紅蓮,另行設計蒼頡檢字法,坊間多稱之爲「第六代」倉頡,但實際使用上,一般都不把它視爲倉頡輸入法的新版本,
相反更像另一款由倉頡衍生而來的新輸入法。它與三代倉頡或五代倉頡相差較大,字根明顯增多,拆碼規則也有不少改變。
它應用於朱、沈二人開發的倉頡系統,該系統字庫完整收錄了歷代文獻用字十萬以上,以倉頡碼作為內碼,重碼率低於5%。
雖然倉頡輸入法愛好者向朱邦復工作室索取到蒼頡檢字法編碼,但它尚未正式發佈。
爲什麼要學習倉頡輸入法?
引用朱邦復先生在《第五代倉頡輸入法手冊》的一段話:
資訊時代的來臨,對人類文化所引起的衝擊,遠較社會型態、經濟制度之影響為烈。
由於文字是資訊的基礎,其功能效率,其適應範圍,都涉及該文字本身、以及使用該文字的國家民族之興衰、存亡。
中國文化是否有存在的價值,我們無權置喙,但是身為中國人,生在這個轉型的時代,卻有責任將中國文化保存下來。
不僅僅只是為了自己、或者為了對列祖前賢有所交待,更重要的是為了未來世世代代的子孫,
他們有權認識過去人類所積累的各種文化珍產,有權探求各種思考的內涵,有權選擇其喜愛的生活方式。
因此,自從研究中文輸入的第一天起,我就給自己定下了一個明確的方向,希望能在有生之年,徹底解決中文文字在資訊處理上的各種問題。
文字的問題應該從文字的特性上著手,我詳細閱讀了有關的古籍,依照中文文字歷代發展之規律、配合時代需求,整理出一套編目的方法。
1975年,我出版《形意檢字法》,後來再經修改,並以電腦為應用對象,才定名為倉頡輸入法。
文字是人類思想行為的記述、表達工具,其發展全基於「約定俗成」,沒有任何人有足夠的力量和智慧加以硬性限制。
即使有人自不量力,也絕對經不住歷史的考驗。
因此,我們設計倉頡輸入法之基本精神,不僅要保全過去見諸史籍的所有文字,亦且兼顧千秋萬世的未來,要能提供新概念、新事物的文字編碼及組合。
由於中國文化精深淵博,涉及的層次太廣,我自知能力有限,面對這樣艱巨的任務,若非訴諸大眾,結合各界的力量,則難有達成的一天。
基於這種信念,我放棄了倉頡輸入法的專利權,潛心致力於中文文字的研究與發展。
優點如下:
學習倉頡輸入可以瞭解漢字在倉頡的編碼,瞭解倉頡是如何將衆多漢字拆分和組合的。
倉頡作爲形碼輸入法擁有大量的字庫和在中文世界廣泛的使用者,不用擔心學習了沒有地方使用。
倉頡的大量字庫也可滿足用戶輸入大量古文的需求。
如果你對於漢語拼音和注音的重碼率較高感到不滿,但苦於沒有代替品時就可以考慮學習一門形碼輸入法,而倉頡就是衆多形碼輸入法中出色的一員。
倉頡與其他形碼輸入法
和倉頡類似的形碼輸入法包括:1.五筆86,2.五筆98,3.鄭碼,4.徐碼,5.字浩 等輸入法。
请注意:五笔、郑码是主打简体的方案、仓颉主打繁体、徐码和宇浩是繁简通打的方案。
它们都为各自的目标做了一定优化,故而也在别的目标上存在缺点。
網路上有人對比了它們的重碼率(僅供參考):
評價輸入法不能只看重碼率,因爲不同輸入法有設計哲學和目標人羣,有優點就有缺點。
選擇輸入法也要符合自己的需求,多多考慮才是。如學習難度、字根記憶難度、是否有輸入古漢字需求、
輸入簡化、正體漢字需求、碼錶的儲備糧及不同中文地區的漢字變體支持等等……
倉頡的使用
如果说笔顺输入法像执笔写字,仓颉输入法就像用剪刀把汉字剪开。要为汉字取码,首先凭视觉(而非字义或笔顺)观察汉字能否分割,无法分割的是整体字;
可分割的则把汉字分割成字首及字身,字首为最左、最上、最外部分,剩余部分为字身。字身若可再分割,则再分割为次字首和次字身。
各部分再分别根据字形取出有限个字码,而后按下空白键输出。
單個漢字至少一碼,最多五碼,如:
串 -> 取碼:(中中; LL)
李 -> 取碼:(木弓木; DND)
清 -> 取碼:(水手一月; EQMB)
惢 -> 取碼:(心心心; PPP)
羽 -> 取碼:(尸一尸戈一; SMSIM)
讀者可以先不用管那些取碼是什麼含義,先對倉頡有第一印象。下面会就漢字的分割方法、取碼码原則、例外字及其他要注意的地方,逐字說明。
倉頡使用/倉頡字母與鍵位
學習倉頡先要認識倉頡字母,就像學習英語先要認識英文字母一樣重要。
要用鍵盤輸入漢字“喵”,用倉頡輸入法顺序敲打“口”、“廿”、“田”三個倉頡字母;打好后摁空白鍵,上屏顯示。
和用鍵盤輸入英文字母類似,只不過倉頡用鍵盤上的原來是字母的鍵位用來充當字根。
倉頡字根就是倉頡的最小單元,它們也是漢字,但是字根不可再拆分,字根加字根的組合使倉頡可以輸入大量偏旁部首、結構上差異不同的各種漢字。
倉頡字母分四大類,共廿四個倉頡字母以及兩個特殊鍵,下面列出所有倉頡字母,
括號裏是 Qwerty 鍵盤相對的英文鍵位,鍵位後方若有漢字,则代表倉頡字母的讀音与含義:
哲理类:日 (A) 、月 (B) 、金 (C) 、木 (D) 、水 (E) 、火 (F) 、土 (G)
笔画类:竹 (斜,H) 、戈 (点,I) 、十 (交,J) 、大 (叉,K) 、中 (纵,L) 、一 (横,M) 、弓 (钩,N)
人体类:人 (O) 、心 (P) 、手 (Q) 、口 (R)
字形类:尸 (侧,S) 、廿 (并,T) 、山 (仰,U) 、女 (纽,V) 、田 (方,W) 、卜 (Y)
特殊键:難 (X) ,用于特殊的“难字”,如“臼”、“卍”等字; 重 (Z),第三代开始不再使用,
有自制仓颉输入法用作特殊键,写法不一,有作“重”、“片”、“符”、“标”等等。
上述“哲理类”等四个分类,虽然反映了发明人创制这些仓颉字母时的思维,但实际应用时毋须记住。
也有圖片可以查看:
念法是:日月金木水火土 竹戈十大中一弓 人心手口 尸廿山女田卜
倉頡字母是使用倉頡輸入漢字的基本,讀者都要記住。感到難以記憶的也可以先跳過記憶,去看下面的組合和使用方法,
然後在實際使用倉頡中養成肌肉記憶(不管怎麼說都是要記住的)。
倉頡使用/正確將手指放在鍵盤上
衆所周知:想要高效率的輸入就不能只用兩根手指在鍵盤上點點。 國際通用的打字指法裏,不同手指有不同的分工,
开始打字前,即静止时,十指应放在以下基本鍵位:
左手尾指放“日”键
左手无名指放“尸”键
左手中指放“木”键
左手食指放“火”键
右手食指放“十”键
右手中指放“大”键
右手无名指放“中”键
右手尾指放“;”键
两手拇指放空白键
如圖:
倉頡使用/輔助字形
廿四個倉頡基本字根字形就可以編碼不少漢字,但漢字源遠流長,體系龐大。單靠廿四個基本字根就想表示全部漢字不免還是杯水車薪,
所以才有了輔助字形。
倉頡的廿四個基本根區叫主根,就是在【倉頡使用/倉頡字母與鍵位】小節裏介紹的字根。輔助字形(根區)又叫副根,也被安排在了主根的按鍵裏。
它们都由所属的仓颉字母(或同一字母麾下的其他辅助字形)在外形衍生变化而来,只要运用视觉联想理解同组字根之间的形状演变关系即可自然记住。
用圖片說明較爲方便。
輔助根區和主根相似,也容易記住。
倉頡使用/漢字分割
倉頡輸入法根據漢字結構特徵取碼,要了解一個漢字的本身才能取到正確的碼。
下面引用 Wiki Book:
分割汉字的核心概念是以视觉(而非字义或笔顺)判断汉字能否分割,不能分割者为“整体字”,能分割者为“组合字”,并将其分割为“字首”、“字身”二部分;
“字身”若还能分割,则按相同方式再分割为“次字首”、“次字身”二部分。分割完后再对各部分分别取码。
以視覺判斷漢字能否分割,能就叫”組合字“
組合字將第一部分分離爲”字首“,其他部分爲”字身“。大略分爲兩種分割方式:
漢字分割::基本分割
可縱向或橫向“一刀分”者,其“最左侧”或“最上方”的部分定義为字首。
左右形漢字比如:[ 江, 俎, 眼, 語, 悟, 韻, 眶, 澹, 謝, 編, 指 ] 等等。。。最左側爲字首,
上下形漢字比如:[ 昌, 想, 變, 學, 燮, 宋, 露, 愛, 夢, 覺, 輩 ] 等等。。 最上邊爲字首。
漢字分割::延伸分割
引用自 Wiki Book:
一些字典惯用且位置固定的字形,会有一部分向右或向下延伸,或以三面、四面包住另一字形,为取码方便,亦视为字首。
可以參考:
漢字分割::次字首和次字身
組合字的自身如果還可以分割,則比照整個漢字的方法分割爲次字首和次字身。
漢字分割::整體字
非組合的漢字叫整體字。
笔划彼此相连,无法分割者。如:“更”、”才”、“韭”、“重”等。 笔划虽非全部交连,但形势为一完整个体者。如:“烏”、“來”、“噩”、“坐”等。
倉頡使用/取碼
倉頡最多可以取五個碼,把漢字分成一到五個倉頡字母的過程叫取碼。
這裏將介紹基本的倉頡取碼方式:
引用 Wiki Book:
依“由外而内,由上而下,由左而右”的顺序取码。
取过的部分不得再取。
整体字最多四码。组合字的字首最多两码,字身最多三码。字身若可分割,则次字首取一至两码,次字身取两或一码。
忽略书法变形或变位。
“丶”、“凵”先取。
取碼::基本取碼
分出字首、字身、次字首、次字身,分別對各部用“由外而內,又左而右”的順序取碼。取碼過的部分不得在取。
引用 Wiki Book:
整体字:最多四码(四码以下全取;超过四码则取第一、二、三码及尾码,下同理)。
组合字,字身为整体字:字首最多两码(一、尾),字身最多三码(一、二、尾)。后文或标作最多取二・三码。
组合字,字身为组合字,次字首一码:字首最多两码,次字首一码,次字身最多两码。后文或标作最多二・一・二码。
组合字,字身为组合字,次字首多码:字首最多两码,次字首最多两码,次字身取尾码。后文或标作最多二・二・一码。
字列如下:
基本取碼::由外而内,由上而下,由左而右
倉頡輸入法順序是“由外而内,由上而下,由左而右”的取碼方式,即
有外部字形如“口”、“匚”先取
明顯的、中間突出的先取,如“巾”就先取“中”在取“月”,而不是從左到右取。
根據第二條延伸的如取碼時部件等高或者無上下區分標準時,由左到右取碼,如“片”、“也”、“世”。
基本取碼::先取右上角的“丶”
若漢字右上方有一点(丶),则一律视为位于最高位置,优先取碼。这是为了避免混淆,也避免与点在下的字重碼。
如:犬 -> 戈大
基本取碼::先取外面的“凵”
“由外而内”的取法如圖:
倉頡使用/列外字
絕大多數漢字可以根據前面的原則取碼,其餘少數漢字,如果按照同樣方式取碼也可以,但是會十分不方便,處理列外字有專門的方式。
列外字類型有如下:
引用自 Wiki Book:
複合字首:作爲字首或者次字首視爲整體,只取頭、尾兩碼。
複合字:視爲整體,取頭、尾兩碼。
難字: 難字部分以難(X)鍵代替。
特殊字:被其他部件連貫時,先取特殊字,再取重疊上的部件,并且可与骨干的中竖重复。
列外字::複合字首
複合字首做“字首”或“次字首”时,视为一整体,只取头、尾两碼。
列外字::複合字
“複合字”不论是单独使用或与其他字形组合使用,一律只取其头、尾两碼。
列外字::難字
有些漢字的部分形狀過於瑣碎、拆碼繁瑣、爲了方便取碼,
規定了特別的“難字”以“難”(X)碼代替難取的部分。
首、难、尾”型:首、尾码好取,其余难取。如:
“首、难”型:仅有首码好取 如:
列外字::特殊字
有部件重疊在以下几种字形的中间时,可先取特殊字,再取重疊于上的部件。
相關資料
倉頡的基本使用方法如上文所說,如果有繼續研究和學習倉頡輸入法的讀者,我準備了一份簡單的相關資料。
相關資料/書籍
《第五代倉頡輸入法手冊》,朱邦復、沈紅蓮著。
《全字庫中文倉頡輸入法》,謝振孟著。
《倉頡輸入法用戶手冊》,無新華著。
《大新倉頡輸入法達人》,蘇清得著。
《仓颉教室》,施能贤著。
《仓颉第四代输入法手册》,伍山科技发展有限公司
《标准仓颉第二代中文输入法》,零壹科技股份有限公司
《仓颉输入入门与实作》,褚武熙著
相關資料/倉頡查碼
Follow Me仓颉字典
第五代仓颉字典
DICT.TW 线上字典
倉頡之友
漢典
相關資料/練習網頁
仓颉之友•香港
仓颉输入法自学套件
倉頡新星
相關資料/朱邦復工作室
朱邦復工作室
相關資料/碼錶文件
aineer-Cj5Cons
Cj5Cons
相關資料/Rime 倉頡輸入法方案
rime-cangjie5
rime-aineer-cangjie
rime-cangjie6
rime-my_cangjie3