Vimscript 創(chuàng)建一個(gè)完整的插件

2018-02-24 16:02 更新

在前四十來(lái)章中,我們講解了許多基礎(chǔ)方面的內(nèi)容。 在本書的最后部分,我們將嘗試從零開始為一門語(yǔ)言創(chuàng)造Vim插件。

這不是個(gè)適合懦夫的游戲。這將需要你竭盡全力。

如果你現(xiàn)在就想退出,那確實(shí)也不壞!你已經(jīng)學(xué)到了如何在~/.vimrc里改善你的生活, 還有如果修復(fù)別人的插件里的bugs。

有"這就夠了,我不想虛擲光陰于創(chuàng)造一個(gè)我將不會(huì)使用的插件"這種想法并不可恥。 現(xiàn)實(shí)一點(diǎn)。如果你不想創(chuàng)造一個(gè)自己想用的插件,現(xiàn)在就可以離開,到你想要的時(shí)候再回來(lái)吧。

如果你_真的_想要繼續(xù),確保你可以擠出一些時(shí)間。本書剩余部分將會(huì)顯得困難, 而且我會(huì)假定你真的想學(xué)點(diǎn)東西,而不是僅僅慵懶地一章章翻過(guò)去。

Potion

我們創(chuàng)造的插件將為Potion這門語(yǔ)言提供支持。

Potion是由Why the lucky stiff在隱于江湖之前(before his disappearance)創(chuàng)建的一門玩具語(yǔ)言。 它非常的簡(jiǎn)單,所以我們就拿它一試身手。

Potion跟Io很像,同時(shí)又借鑒了Ruby,Lua以及其他語(yǔ)言。如果你未曾玩過(guò)Io,它可能看上去略古怪。 我強(qiáng)烈推薦你花上至少一兩個(gè)小時(shí)的時(shí)間玩玩Potion。在現(xiàn)實(shí)生活中你不會(huì)用它, 但是它可能會(huì)改變你思考的方式并帶給你新的思想。

Potion的當(dāng)前實(shí)現(xiàn)相當(dāng)?shù)卮植?。舉個(gè)例子:如果你犯了語(yǔ)法錯(cuò)誤,它通常會(huì)還你段錯(cuò)誤。 不要太糾結(jié)于此。我會(huì)給你許多可用的代碼示范,這樣你就能更關(guān)注于Vimscript本身而非Potion。

我們的目標(biāo)不是學(xué)習(xí)Potion(盡管那也挺有趣)。 我們的目標(biāo)是以Potion作為一個(gè)小例子來(lái)體驗(yàn)寫一個(gè)完整的Vim插件的方方面面。

練習(xí)

下載并安裝Potion。這個(gè)就要你自己動(dòng)手了。它應(yīng)該會(huì)比較簡(jiǎn)單的。

確保你可以在Potion解釋器和以.pn文件的形式運(yùn)行小冊(cè)子里的第一個(gè)示例代碼。 如果解釋器貌似不能工作,看這個(gè)issue來(lái)查找可能的原因。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)