轉(zhuǎn)自 https://github.com/rime 認(rèn)識(shí) La Rime自序做這項(xiàng)目是發(fā)自對(duì)輸入法創(chuàng)新的興趣,爲(wèi)實(shí)驗(yàn)新的輸入法而打造一款易于定製的智能輸入軟件。 乃定名爲(wèi):中州韻輸入法引擎 / Rime Input Method Engine 取意歷史上通行的中州韻,愿寫就一部彙集音韻學(xué)智慧的輸入法經(jīng)典之作。 項(xiàng)目網(wǎng)站設(shè)在 http://rime./ 感謝 Github. 感謝 Pages. 創(chuàng)造應(yīng)用價(jià)值是一方面,更要堅(jiān)持對(duì)好技術(shù)的追求,希望能寫出靈動(dòng)而易于擴(kuò)展的代碼,使其成爲(wèi)一款個(gè)性十足的開源輸入法。 歷史2009年底,佛振按這一思路,借助強(qiáng)大的IBus輸入法框架和Python腳本語(yǔ)言,快速開發(fā)出「中州韻」的原型。 如今有許多朋友關(guān)注并樂于幫忙完善這一軟件。俺打盤接受同學(xué)們的建議用C++來寫一部正式版。 概念相對(duì)于最初的實(shí)驗(yàn)品,概念沒有多大變化。佛振重新來歸納。 組成這個(gè)軟件系統(tǒng)的對(duì)象,我給他粗略分成三類: 邏輯對(duì)象,各自表達(dá)解決輸入法中某類問題的算法,以及描述輸入法的工作流程。 咱假定,從不同種類的輸入法中,可歸納出幾種類型的實(shí)現(xiàn)機(jī)制,即通用于一類輸入法的算法和數(shù)據(jù)結(jié)構(gòu)。 輸入法引擎/engine 佛振把他解讀爲(wèi)用來實(shí)現(xiàn)輸入功能的程序,是這些算法及相關(guān)數(shù)據(jù)結(jié)構(gòu)的總和。 輸入法典型的工作流程,大致如此:
將這一流程中純粹的邏輯部份用程序?qū)懗鰜?,就是我所形容的輸入引擎?/p> 其中不包括:
輸入法中的數(shù)據(jù)對(duì)象,有輸入引擎處理用戶輸入動(dòng)作所得的動(dòng)態(tài)數(shù)據(jù),又有預(yù)先配置到輸入法中的輸入方案。 若要講,輸入引擎是跨輸入法的通用程序,輸入方案/schema 即是那差異的部份。 輸入方案包含:
爲(wèi)了足夠靈活而能支持廣泛的輸入法類型,在輸入方案中,利用 拼寫運(yùn)算/spelling algebra 機(jī)制在輸入碼與字典編碼之間建立一組映射,以此將個(gè)別方案中的特殊檢索方式統(tǒng)一到通用的算法。 交互對(duì)象,承擔(dān)與用戶交換信息的功能。不同于輸入引擎、輸入方案的跨平臺(tái)特點(diǎn),交互對(duì)象的實(shí)現(xiàn)是系統(tǒng)相關(guān)的。 項(xiàng)目構(gòu)成于是整個(gè)工程又可分爲(wèi)若干子項(xiàng)目:
開發(fā)計(jì)劃偉大雄圖,還是分期來完成吧。 初創(chuàng)期,完成軟件架構(gòu)和基礎(chǔ)功能。 第一期,要把用戶體驗(yàn)做到一款正式產(chǎn)品的標(biāo)準(zhǔn)。
第二期,兼容更多系統(tǒng)平臺(tái)。可以嘗試一些創(chuàng)新的設(shè)計(jì),形成開發(fā)者暨輸入方案創(chuàng)作者社羣。 第三期,添加網(wǎng)絡(luò)功能,持續(xù)優(yōu)化輸入效果;建立輸入法創(chuàng)作平臺(tái)。 計(jì)劃于 八月初八 發(fā)表1.0版。即完成初創(chuàng)期,進(jìn)入第一期的初級(jí)階段。 萬事開頭難,雖然實(shí)驗(yàn)版的經(jīng)驗(yàn)可做參考,讓這項(xiàng)目高速運(yùn)轉(zhuǎn)起來,仍需要大的智慧。 有同學(xué)索要文檔,卻真的沒有。千頭萬緒,未及梳理,暫且概說一番,也可意會(huì)創(chuàng)作此軟件的思路。 是爲(wèi)之序。 |
|