倉頡輸入法

倉頡輸入法
中文輸入法
倉頡輸入法五字拆碼.svg
倉頡輸入法的正体中文取碼
發明人朱邦復
發明年份1976年
類別字形输入法

倉頡輸入法是一種常用的中文輸入法,由有「中文電腦之父」美譽的朱邦復先生於1976年創製。初期只有正體中文版本,原名「形意檢字法」,用以解決電腦處理漢字的問題,包括漢字輸入、字形輸出、內碼儲存、漢字排序等。朱邦復發明此輸入法時正值他為三軍大學發展中文通訊系統之際,時任三軍大學校長的蔣緯國為紀念上古時期倉頡造字的精神,乃於1978年將此輸入法重新定名為「倉頡輸入法」。

1982年,朱邦復登報公開放棄倉頡輸入法專利權,並且極力推動電腦的中文化。現今大部分作業系統,甚至一些電子辭典皆附有倉頡輸入法,繁體中文鍵盤也大多印有倉頡輸入法的字根。在繁體中文世界裡,倉頡輸入法是最為普及的形碼輸入法之一。

倉頡輸入法適用於多種平台,主流的中文作業系統和大部分電子辭典均有內建。一些字典辭典或線上中文字典亦採用倉頡編碼作為檢索工具。

簡介

歷史

倉頡系統中,倉頡碼不僅用來輸入固有字,也可以組合、輸出字形,甚至呈現虛構字

1973年春季,朱邦復返回台灣後,欲改良中文打字機,鑽研中文檢索方式。花了約三年時間,並且在研究後期得到國立臺灣大學中文系畢業生 沈紅蓮女士協助擔任助手,於1976年底發佈「形意檢字法」,最初使用52個中文字母作檢索字母,每個漢字分拆成3個字母的編碼。當時,三軍大學需要無給職人員發展中文通訊系統,40歲的朱邦復立即接受此一職務,這時的他並不懂電腦,至此才開始接觸程式語言。

1978年8月,朱邦復和助手沈紅蓮重新規劃拆取字根的方法,採用「首二身三」的規則,使檢索字母數由52個減至26個,以適應一般電腦鍵盤。在減省字母前,原先的設計是在同一鍵中安置兩個中文字母,以Shift鍵區分兩者。

1979年,三軍大學的有綫短程中文通訊實驗成功,朱邦復實現以中文字母作爲內碼,儲存漢字字矩信息,解決電腦處理漢字的問題。時任三軍大學校長的蔣緯國先生爲其賜名「倉頡輸入法」。朱邦復在同年12月開始,與宏碁電腦合作,開發內置程式語言、中文系統及應用軟件的「天龍中文電腦」,於翌年起在市面上銷售,備受市場歡迎。此中文系統以倉頡碼為其根本,收字數萬,效率甚高。朱邦復因此獲頒發「行政院長獎」。

朱邦復繼續改進倉頡輸入法。同年,由他成立的零壹公司發表第二代倉頡輸入法,使用在他爲Apple II電腦設計的「漢卡」產品上。「漢卡」爲該機提供中文介面,售價新台幣1500元,使得華人利用電腦處理中文的成本更低。

1982年,朱邦復在《康熙字典》裏選取四萬多字,改良第二代倉頡,使它適應大字集的輸入,並把成果發表爲第三代倉頡輸入法。同年,他登報公開放棄倉頡輸入法專利權,並且極力推動電腦中文化。現今大部分作業系統,甚至一些電子辭典皆附有倉頡輸入法,為正體中文世界最普及的形碼輸入法[1]

朱邦復本來想根據其「漢字基因」理論,建立一套「倉頡系統」,用倉頡碼統一處理漢字的形、音、義、碼、序、辨等六大問題。其中倉頡碼的原始目的是漢字檢索及排序,其取碼具有字首字身的概念,以字首做為分類,字身做為補充,如此便可讓電腦「理解」漢字,進而達到組字、字義理解,甚至與人溝通的功能。

由於本以漢字檢索為目的,倉頡取碼依據視覺辨識原理,能反映漢字的細微特徵,幾乎所有不同字形異體字,都有不同的編碼,因此重碼率為當今中文輸入法最低者[2]。倉頡輸入法亦為一般系統中支援字庫最大者,幾乎所有系統可見的漢字,皆可用倉頡輸入法(系統)鍵入,因此也成為漢字文化工作者選用的主要輸入法。然而,當今主流電腦系統只提供倉頡輸入法,沒有採用整套倉頡系統,因此許多原先的設計理念,如倉頡內碼、字型產生器與極大字庫等,都沒有實現。[3]

優缺點

由於開發甚早,又無版權,倉頡輸入法的普及度在中文電腦系統中十分高,號稱「只要有中文系統,就必定有倉頡輸入法的存在」,所以人們學習倉頡後,理論上是不用擔心無法使用它的。此外倉頡的重碼率很低,這就讓使用者只需要看着稿子或鍵盤就能打字,不需要緊盯着螢光幕來選字,實現「盲打」。倉頡輸入法字根較許多形碼輸入法少和簡單,容易記憶。它不依靠四排按鍵——即使沒有把鍵盤上的數字鍵、符號鍵都用作中文字根鍵,輸入時手指活動幅度與英文打字相若也免除輸入符號、數字時的困擾,以及在手提電腦鍵盤上遇到的移位問題。它對漢字的拆分規則清晰嚴謹,只要熟悉拆碼規則,絕大多數漢字的拆碼都沒有爭議。

倉頡輸入法雖然具備以上優點,但也受到許多批評,例如為顧及檢索,編碼規則較繁複、無容錯編碼[4]字體問題[5]、版本差異問題[6],導致規則略顯繁瑣、取碼或遇問題,而被一些人視為畏途。另外倉頡輸入法並未為常用字之快速輸入設計簡快碼,没有类似于五笔的词组输入方法,標點符號之輸入也略嫌不便,因此沒有成為最快速的中文輸入法。

不過,倉頡輸入法有一些衍生版本,對上述批評問題作了改進,例如加入容錯編碼、簡快碼等。它們都標榜可以由傳統倉頡輸入法輕鬆跳至衍生版本。當中有一些版本更提升了輸入速度。例如大新倉頡輸入法,是目前中文電腦輸入最快速紀錄的優勝者。

倉頡還有一些特色,常被競爭對手或批評者視爲缺點,但有硏究輸入法的人士並不同意。包括:依字形來取碼,而非筆畫和書寫筆順;同一筆畫可以剪開等。批評者認爲它違反漢字邏輯,令漢字走上「歧途」,是缺點。反駁者則指漢字在分析構形字理、字典部首歸部時,都是按形狀分析,會不依筆順甚至剪裁筆畫,因此這只是主觀上接受與否的問題,不是缺點。

最新版本

目前倉頡輸入法最新的公開版本是第五代,而流傳最廣泛、最常使用版本是第三代[7]。三代倉頡與五代倉頡相差不大[8]

朱邦復的多年助手 沈紅蓮,另行設計蒼頡檢字法,坊間多稱之爲「第六代」倉頡,但實際使用上,一般都不把它視爲倉頡輸入法的新版本,相反更像另一款由倉頡衍生而來的新輸入法。它與三代倉頡或五代倉頡相差較大,字根明顯增多,拆碼規則也有不少改變。它應用於朱、沈二人開發的倉頡系統上,該系統字庫完整收錄了歷代文獻用字十萬以上,以蒼頡碼作為內碼,重碼率低於5%。