過去的一週,都睡的很晚,終於作出了Atom上的APICloud語法提示與補全插件:apicloud_autocomplete .箇中滋味,感受仍是有必要記錄下來的.代碼基於 GPL-3.0 開源,因此我能夠較爲詳細的記錄一些很難被理解和體會的技術細節.APICloud目前已有Studio,VSCode,Webstrom和Sublime的語法補全插件,可是毫無疑問,我作的這款,是目前爲止最好的 -- 惟一的一個支持100%全部API,惟一的一個同時支持模糊匹配和靜態推導語法提示插件!ios
可能你會說,估計是Atom語法補全的擴展機制靈活等等吧!可是,我能夠很明確地告訴你,核心邏輯是基於正則匹配的通用邏輯,和Atom沒有必然的聯繫! apicloud_autocomplete ,須要多個技術棧的創造性地混合使用,某種程度上,這個系列的文章,就是寫給全棧開發工程師的讚歌!哈哈~git
如今的工做,我很難天天都有時間去寫博客.儘可能這個系列在周內更新完;若是delay了,還請見諒!固然,插件自己的邏輯代碼已經寫就,你們能夠直接去看github上閱讀:apicloud_autocomplete 插件源碼github
(一) 抓取須要的模塊信息. -- 會分享一個基於公開文檔的完整的模塊信息數據壓縮包呦!正則表達式
(二) apicloud_autocomplete 架構設計與實現. -- 會着重講述"模糊匹配"與"靜態推導"的正則技巧.shell
(三) 清洗數據,導入插件. --你在看的時候,更多有價值的信息在數據清洗部分;可是我想說的是,當你把完整的真實數據導入既定功能代碼中,當插件終於有了完整數據,被賦予完整生命,居然還能運行的時候,那種興奮,真的是很難言表!你們有興趣,有時間,必定要本身搞下這個!api
我努力尋找商業競爭和技術共享之間的結合點,目前爲止我發現基於 GPL-3.0 能夠很好地平衡這兩點.架構