簡體   English   中英

在vim中自動編寫循環?

[英]Automate writing for loop in vim?

我今天一直在寫循環。 所有這些都具有以下格式:

for(size_t szI = X; szI < Y; ++szI)
{
   //Something
} 

而且我知道有辦法在vim中記錄動作。 如果X和Y可以改變,一旦我以某種方式提供X和Y,我可以在vim中做一些東西來寫一個for循環嗎?

您可以使用插件像snipMate存儲片斷,然后你就可以存儲for摘錄。

實際上,它已經附帶了許多預定義的片段 ,其中很多可能證明是有用的。

這是Vim wiki縮寫的一個例子:

:abbreviate forl for (int i = 0; i < ; i++) {<esc>7hi

不完全是你想要的,但接近於此。

我用的是宏:

let @f = "ifor(size_t szI = X; szI < Y; ++szI)^M{^M}^[O^T"

請注意,所有^X字符都是通過Ctrl V Ctrl X輸入的。

然后,您可以使用@f運行此宏。

編輯:剛看到你問題的第二部分(不確定你是否編輯過它?也許我讀錯了。)但是如果X和Y要改變,我會建議一個更有特色的解決方案,比如snipMate.vim。

最進化的方式確實是使用片段引擎。 snipMate已被喚起。

我正在維護mu-template ,它是lh-cpp高級代碼片段的根。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM