我想映射一個鍵或鍵組合,理想情況下爲fg
插入功能標題的模板。如何映射密鑰以插入多行代碼或註釋?
我如何在Vim的插入模式映射fg
插入例如下面的代碼到我的文件:
/*
* Function Name:
* Description:
* Parameters:
* Result:
*/
我想映射一個鍵或鍵組合,理想情況下爲fg
插入功能標題的模板。如何映射密鑰以插入多行代碼或註釋?
我如何在Vim的插入模式映射fg
插入例如下面的代碼到我的文件:
/*
* Function Name:
* Description:
* Parameters:
* Result:
*/
ino fg /*<CR>Function Name: <CR> Description: <CR> Parameter:<CR> Result:<CR>/
您可能需要一些小的調整來實現格式化
我不推薦在插入模式下映射fg
,因爲f
是您通常輸入的字符。映射fg
會爲01創建兩個可能的結果字符:一個 - 實際上是在光標位置添加了一個f
字符,另一個是 - 調用映射的宏。這就是爲什麼每次輸入f
時vim都會等待下一個字符來檢查它是否不是g
如果不是那麼它會添加下一個字符,但是如果你輸入的只是f
vim會等待少量時間,然後纔會釋放光標。感覺像vim是滯後的。
我寧願做正常模式的映射,但使其切換到輸入模式:
nnoremap fg i/*<CR>Function Name:<CR>Description:<CR>Parameter:<CR>Result:<CR>/<CR>
片斷就像內置:abbreviate
類固醇,通常與參數插入,鏡像和多停在裏面。第一個非常着名的Vim插件之一是snipMate(受TextMate編輯的啓發);不幸的是,它不再被維護;儘管有a fork。一個現代的替代品(需要Python)是UltiSnips。還有更多,請參閱this list on the Vim Tips Wiki。
有三件事情需要評估:一是片段引擎本身的特性,二是作者或其他人提供的片段的質量和廣度;第三,添加新片段是多麼容易。
如果在飛行中的解決方案,而不是一個.vimrc一個隨時可以使用宏想的:
q
。f
)。q
停止錄製。@f
,您現在都可以使用粘貼在f
之下的文字。
謝謝,這一個工作得最好。 – gitlinux
@gitlinux如果我的回答解決了您的問題,請點擊大複選框以接受它作爲答案。 –