PIME輸入法框架、開發(fā)和調(diào)試方法簡介

PIME輸入法框架、開發(fā)和調(diào)試方法簡介

本文寫于2021年4月11日,閱讀時請注意時效。

PIME是一個可以使用Python和Node.js作為輸入法引擎的Windows輸入法框架,并且在積極開發(fā)中。這個框架可以大幅降低在Windows下開發(fā)輸入法的工作量(只需要關(guān)注引擎部分),非常推薦使用

關(guān)于什么是輸入法框架/引擎和更全面的介紹輸入法的資料,請見我的另一篇輸入法文章。

PIME相關(guān)資料

PIME項目地址:https://github.com/EasyIME/PIME

PIME作者PCMan博客地址:https://pcmanx.blogspot.com/

PIME作者PCMan facebook地址:https://www.facebook.com/pcman.im

PIME作者的兩個視頻(簡單介紹了PIME的結(jié)構(gòu)、開發(fā)和調(diào)試方法,并給出了一個Demo):

COSCUP2015-用Python開發(fā)Windows中文輸入法:https://www.bilibili.com/video/BV1bU4y1h7HT/

HKOSCon2017-用Python和JavaScript快速開發(fā)Windows中文輸入法:https://www.bilibili.com/video/BV1y5411A7w7/

開發(fā)和調(diào)試方法

開發(fā)和調(diào)試的方法在上面作者的視頻中有講解,推薦先看上面兩個會議視頻,由于距視頻已經(jīng)有一段時間了,這里對一些細節(jié)問題進行補充。

安裝和卸載

引用一段作者的原話:

理論上,使用 github 上釋出的程式碼可以完全重新編譯整個套件,但因為有不少元件,不但都要放到正確的位置,還要使用指令分別手動註冊輸入法模組,很難全部手動正確設定,強烈建議使用包好的安裝程式,裝好了再把你想修改的檔案換掉即可。

  1. 下載Releases中的PIME安裝包,發(fā)文時版本號是1.1.0。下載一份項目源代碼(這里需要用到PIME/python/input_method中的meow,也就是作者視頻中的輸入法Demo)

  2. 安裝過程中選中新酷音(chewing)和中州韻(rime),安裝這兩個輸入法的原因:

    1. 目前PIME沒有開發(fā)文檔,所以需要參照新酷音中的注釋進行開發(fā)

    2. 新酷音的輸入邏輯和平時常用的簡體中文輸入法不太一樣,中州韻是PIME唯一支持的簡體中文輸入法,界面設計等方面可以用來參照,但是沒有注釋

  3. 如果不使用IE的話,可以不用選擇停用IE保護模式

  4. 安裝完畢后,將meow復制到PIME的安裝位置中的對應文件夾,我電腦上安裝位置是C:\Program Files (x86)\PIME\python\input_methods

  5. (這一步之前請保存好電腦中的文件)以管理員身份運行Cmd,運行如下命令:

    regsvr32 "C:\Program Files (X86)\PIME\x86\PIMETextService.dll" 
    regsvr32 "C:\Program Files (X86)\PIME\x64\PIMETextService.dll" 
    

    運行之后電腦可能會全面卡住,這時只要重啟即可。重啟之后就可以看到新的輸入法了

  6. 卸載時只需要運行PIME自帶的Uninstall程序即可刪除全部組件,注意這時我們自己的輸入法也被刪除了,請?zhí)崆白龊脗浞?/p>

調(diào)試

目前還沒有優(yōu)雅的調(diào)試方法,重新加載輸入法組件簡單粗暴的方法如下:

  1. 打開任務管理器,kill掉所有python進程(如果是用Node.js開發(fā)的可能有所不同)

  2. 任務管理器中可以看到一個PIME Launcher的進程,它會負責在你使用輸入法打字的時候重新拉起python進程,這時代碼的改動就被重新加載了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容