- 論劍談棋 豪杰盡聚 - 華岳論壇 - http://daoyionline.net/
根据反饋信息,為讓中文的輸入更方便,我改進了《漢王簡》程序,解決了不少原版
跟帖目錄:
原 帖 [ 0 ]
[ 1:352 ] CriticalQuestion(秦.村.隹.花) - 21:25:09 10/08/2002 *** 回 帖
[ 2:623 ] 江毅(秦.山.新.參) - 16:14:46 10/15/2002 *** 回 帖 - 論劍談棋 豪杰盡聚 - 華岳論壇 - http://daoyionline.net/
在各型微軟平台上一些問題,進一步擴充了詞庫,另增加了如簡体(Gb)与繁体(Big5)
代碼轉換等功能。
《漢王簡》輸入引擎 1.20 銀版.
《漢王簡》文本編輯 1.30 古銅版.
下載網址: http://www.hanwj.com
------新功能預告:(1)排版,(2)詞語預測
------一則消息:最近在國內發現《漢王簡》盜版碟。
多謝大家提的寶貴意見!
江毅
jiangyi@hanwj.com
=========================介紹文章=========================
我有一個夢想:讓中文輸入得更快
江毅 2002.7
在西方社會呆了几年, 對西文在計算机上輸入之便利真是太有感触了. 無論是在辦公室
還是在家中,無論是寫EMAIL還是寫產品設計文件,無論是服務員做旅店住宿登記還是女兒寫中學的
家庭作業,但見那鍵盤上十指輕彈,自然流暢,英語文句就如行云流水般在屏幕上奔涌而出.
時間倒推回一九九六年春天.當時我想學中文輸入, 卻發現不僅找相關的軟件不容易,就是找到
了也甚難使用。這樣,一种想利用自己掌握的計算机知識從實用的角度研究和改進中文輸入的想法
便從心里油然而生,并將此付諸于行動.
現在,積六年之心血, 終于可以拿出來一個自認為還像點樣的東西給大家看了.這就是我最近剛寫
完的中文編輯輸入程序,叫《漢王簡》中文書寫平台.我在其上實現了兩個具創新思想的中文輸入方法:
【漢王簡拼音】和【漢王簡形碼】.
以下分別對我的主要思路做出描述(如果你下載了《漢王簡》程序,可運行"幫助"菜單下的
《漢王簡輸入法》演示幻燈片.那樣更加形象)。
【漢王簡拼音】。
詞組拼音是人們最常用的輸入方法。我對拼音方法作了如下改進:
(1)拼音方法的最大弱點,莫過于重碼較多。我解決的辦法是:在輸單字時,如果感覺重碼太多,
可用鍵盤最左邊一列鍵標出該字聲調(如是輸詞組,則標出詞尾字的聲調).這樣能把候選詞剔除
掉約四分之三(四聲取一聲)。由于拼音輸入時腦海中出現的本來就是字詞的發音,故用聲調做
限定較為自然。注意:我的設計不是通常意義上的帶調拼音。因為在我的方案中四聲可加可不加﹔
就是加也衹對詞的最后一字加。
(2)拼音的第二大問題,是敲鍵嫌多(雙拼除外)。我的設計允許將拼音中的“ng”簡輸為
“g”,如 fang 輸為 fag ,liang 為 liag。這一來敲的鍵可就省了不少。(既然傳統上形碼
的設計允許做省略,拼音編碼當然也應該允許做省略)。
(3)對四聲不准的人,為精确選字詞(特別是單字), 可用鍵盤右邊五個特定鍵標出單字(或詞尾字)
的第一,二和末筆划(不用全標),以大大減少重碼率。(和(1)一樣,筆划鍵不是非加不可)。
這特別适用于“看打”的情形。
(4)詞組方法大大加快了輸入速度。但我們經常會遇到找不到詞的時候(試想一下,如果敲
了一堆鍵卻發現找不到詞衹好刪掉重來會是什么感覺? )。因此,對于一個輸入法,一個智能化
的,易用的“找詞方法”是非常重要的. 我設計的找詞方法會利用已敲的鍵序列,將其中各部分
對應的詞或字(优先大詞)找出來, 使您輕松的組成想要的詞(新詞自動加入詞庫)。具体做法
是:如果你輸入時發現找不到詞,可敲〈回車〉便加入找詞過程。
(5)漢字輸入的過程實際上是一個對字符串進行匹配的過程。采用計算“編輯距离”
(Edit-Distance,Dynamic Programming)的方法,与前綴匹配方法相結合,便可實現對輸入字符
串的模糊匹配。這樣大大加強了輸入的容錯能力(求編輯距离的方法能較好地處理少敲,多敲,
錯敲,兩鍵次序反的情形)。在漢字輸入領域,我還沒有見到過其他人使用這种方法。
【漢王簡形碼】。
拼音方法雖簡單易學,但重碼多﹔且基本上是一种基于選字的方法,效率不高。
并且,由于選字造成注意力的經常轉移,對寫作思維造成干扰。這也是為什么熱衷于
漢字輸入的人最終要去學形碼。
形碼一般重碼大大少于音碼,但普遍難學。難學原因之一,是字根多,難記。
這是形碼不可克服的問題。形碼必然比拼音方法難學。
說到形碼,“萬碼奔騰”的局面中,最多的就是形碼。我對所見過的形碼的印象是,
它們的字根分組常常圍繞著字根的淵源、字義等抽象的東西來分組。這樣造成的結果是,
同在一鍵上的字根互相很不象。我覺得這是致命的缺點。因為一般平頭百姓并不知道或
不去關心字根的字義或來龍去脈,最好的字根分組應純粹按照“形相似”的原則去分。
另外,有些輸入法衹將字根分配在26個英文字母鍵上,這造成聚集在一鍵上的字根過多
(有的輸入法達到一鍵30個字根),且一鍵對應多組互不相象的字根。這也造成一個看起來
小實際上非常重要的后果:無法畫出一個恰當的鍵盤字根分布圖。而這個圖對人們的記憶
非常有效。因為記憶字根分布,實際上就是記憶由字根到鍵位的二維位置的映射,而鍵盤
字根分布圖則是此映射的直接表示。這种衹用26個字母鍵的形碼,應用到最新公布的漢字
大字符集,定會重新面對重碼的問題。
還有,有些輸入法的規則不自然。比如規定一字敲鍵四次,對于字根數小于四的,
要補字型識別碼(如末筆筆畫的筆畫鍵)﹔多于四的,則先敲前三字根,然后敲尾字根。
這使得在拆字時須對每字略加分析。此事看似不大,其實大大加重了輸入者的心理負擔。
我針對這些問題設計了漢王簡形碼。它有如下特點:
1。字根在鍵盤上的排列較合理。采用了大鍵盤的思想,將字母鍵,數字鍵,標點
符號鍵,等均加以使用。這樣,在一鍵上的字根較象,每鍵上字根也不太多。也因為如此,
本輸入法可以提供可用的鍵盤字根分布圖,以助記憶。
當然,為避免過多重碼,仍有不規則的情形。但比較見過的其它形碼,相信要少的多。
2.輸入規則自然。人們寫字時大腦中發生的事,首先是由字映射為以筆順為序的字根
序列(這個映射有時并不一下完成,而是前面的字根提醒了后面的字根)﹔然后逐字根寫
下。因此最自然的輸入規則,正是逐字根一一輸入。漢王簡形碼正是這樣一种“全字根”
輸入法。由于漢王簡形碼選取的字根較大**,對于簡体字而言,大多數常用字的碼長不大,
二、三、四鍵可輸一字。對于字根序列較長的字,則有〈任意匹配鍵〉幫助,也問題不大。
由于相似字根同處一鍵,而不少字根自成一字(成字根),必然地造成一鍵同時直接
代表多字的情形。除了指定一字(鍵名)用〈空格〉輸入外,其它成字根用連敲其拼音首
字母二次的方法選出輸入(亦可用F1,F2等鍵選字)。當然在設計中需保証這种選字的三
鍵序列不會成為任何其它字編碼的前綴,不然其它字就無法輸入了。
這种連敲拼音首字母二次的選字方法,由于需在大腦中反映出該字的音,會不會加重
輸入者的心理負擔呢?實踐表明,問題不大。理由為:一,對象為成字根,不需拆字,故
由形到鍵的第一步映射負擔小﹔二,衹需在大腦中反映出該字的拼音首字母,不是整個拼
音序列。
3.由于字根在大鍵盤上分散幵來,且排列上下了功夫,故重碼少,不需經常選字。
4.鍵位布局基本合乎指法要求﹔即鍵入漢字時指序自然,不別扭。
5.輸入標點符號及英文字母時無需切換狀態。
6. 當對所輸字某(些)字根不記得時(這是常發生的事),可鍵入〈任意匹配鍵〉以代之。
總之,漢王簡形碼輸入法的基本設計推理為:
(1)為實現逐字根一一輸入漢字的簡單輸入規則,選字根時,衹有選大字根**,才能
确保效率(衹有簡体字能作到這點)。
(2)選大字根,必然選出二百多到三百多個字根﹔不可能僅由26個字母鍵作鍵托,一
定要用到包括標點符號鍵,數字鍵在內的其它各鍵。〈SHIFT〉,〈CAPS LOCK〉等鍵原
衹對輸英文有意義,位置也不錯(右〈SHIFT〉除外)﹔固可用作正常鍵托。
(3)由字根到鍵的分配,遵循同一鍵上字根形狀相似的原則﹔為避免重根過多,亦有
例外情形。由字根到鍵的聯系,多數按形相似(那怕很模糊),有時按拼音。
(4)同一鍵上會有多個成字根,須有辦法選出它們。用連敲兩下拼音首字母的辦法較
自然,分辨率比用末筆筆畫碼要高。
(5)使用〈SHIFT〉及左
(6)設左〈ALT〉鍵為特別鍵“神”鍵,用來替代遺望了的一個或多個字根。以利于
學習和實際輸入。
我的設計基本上按“形相似”的原則安排字根,故字根乍看多,實際等价字根并不多,
衹有五十個(五十個鍵)。字根表看起來嚇人,可稍下點工夫,這漢字輸入可就化繁為簡了!
以上描述中雖以形碼篇幅為多,但從我把《漢王簡輸入法》放到網上后所收到的反饋
信息看,以《漢王簡拼音》更受歡迎。這顯示出使用拼音的人遠比使用形碼的為多。
中華文化,絢麗多采.中華語言,博大精深.如小生在有生之年,能為弘揚中華語文盡
微薄之力,也就不枉此生.
(加拿大 yijiang6@hotmail.com)
參考文獻[1]“中文字的机械化”,墨海,九七年七月第三三○期,《華夏文摘》。
[2]“江毅創立《秦王衡輸入法》”, 二OO一年二月四日,陝西日報。[注:秦王衡為《漢王簡》曾用名]
[3] Introduction to Algorithms, a creative approach, pp. 155-158,
Manber, U., Addison-Wesley, 1989.
參考網頁[1] http://www.hanwj.com/
Hi, JiangYi. Do you have LINUX version?
在各型微軟平台上一些問題,進一步擴充了詞庫,另增加了如簡体(Gb)与繁体(Big5)
代碼轉換等功能。
《漢王簡》輸入引擎 1.20 銀版.
《漢王簡》文本編輯 1.30 古銅版.
下載網址: http://www.hanwj.com
------新功能預告:(1)排版,(2)詞語預測
------一則消息:最近在國內發現《漢王簡》盜版碟。
原 帖 [ 1 ]
多謝評論和指點!
多謝評論和指點!
Linux我也在做准備。去年初回國買了紅旗藍妞可思2.0。但衹是一直沒得空真正編程.老忙于
在微軟平台上加新東西.
現在還在微軟系統上打轉,主要是因為還有兩件事沒完:
(1)簡單排版.這件事使用RichEdit2.0/3.0不費多少事.所以想干脆搞完.事實上剛剛完了.
(2)詞語預測.這是一項創新.自己認為,這一創新對任何中文輸入方法都有長遠价值.所以想盡快搞成.
由于有關數据庫已建好,故也無須太多時間.
我想盡快轉向Linux.
煩請問一下,
(1)您用的Linux是gnome還是kde?或者您知道哪個用的更廣?
(2)請問用Borland Kylix 3(C++)是一個好的起點嗎? Linux上有沒有像微軟的RichEdit
Control 一類的東西?
謝謝您對漢王簡的關心和建議!
衷心問好!
江毅
聲 明: 文 責 自 負。