是否有插件使vim關閉基於indent和語法文件中的數據自動爲任何語言包裝代碼塊的語法結構?使vim自動關閉代碼塊的句法結構
比如我編輯LUA文件,當我寫
function myfunction()
並按回車鍵,它會自動做出關閉「結束」
function myfunction()
<cursor position>
end
或者,也許任何人都可以顯示一個例子,如何寫你自己的插件用於特定語言的長代碼塊關鍵字(如lua,erlang或pascal)?
是否有插件使vim關閉基於indent和語法文件中的數據自動爲任何語言包裝代碼塊的語法結構?使vim自動關閉代碼塊的句法結構
比如我編輯LUA文件,當我寫
function myfunction()
並按回車鍵,它會自動做出關閉「結束」
function myfunction()
<cursor position>
end
或者,也許任何人都可以顯示一個例子,如何寫你自己的插件用於特定語言的長代碼塊關鍵字(如lua,erlang或pascal)?
Endwise似乎是你在找什麼。它已經支持lua,如果你對VimL感到滿意,它看起來很容易擴展。
我會使用像UltiSnips(我的最愛)或Snipmate的片段插件。它們基本上將一些小文字或一段文字擴展爲更大的代碼段,並允許您僅編輯每個結構的唯一部分。 UltiSnips和Snippmate都包含許多語言的片段,並允許您創建自己的片段。
例如UltiSnips包含Lua的函數片段。我只需要鍵入了fun
,然後按tab鍵,它被擴大到
function new_function(args)
end
和new_fuctnion
被選中,所以我可以編輯的功能名稱。然後當我按下Ctrl鍵 - Ĵ(在我的vimrc我重新綁定這標籤),其選擇是在這種情況下,讓我進入函數的參數args
片斷的一個部分。最後的Ctrl - j將光標放在函數的主體中。
正是我在找的! – 2012-01-10 15:08:55