2011-01-17 9 views
3

今日私はループのために書くつもりです。これらのすべての形式は次のとおりです。vimにループの書き込みを自動化しますか?

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

そして、私はvimにアクションを記録する方法があることを知っています。もしXとYが変わることができるなら、何とかXとYを与えた後、forループを書くためにvimで何かできますか?

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

ないまさにあなたが望んでいたが、それに近い:

答えて

7

は、あなたが、その後にforスニペットを保存することができスニペットを保存するためにsnipMateのようなプラグインを使用することができます。実際に

、それはすでにpredefined snippetsの多くが付属して、多くの有用であることを証明し得ます。すべて^X文字がCtrlキーVCtrlキーXを介して入力されている

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

注:

1

私はマクロを使用すると思います。

@fでこのマクロを実行できます。

編集:質問の2番目の部分を見ましたが(編集したかどうか分からないのでしょうか?間違っていると思いますが)、XとYが変更される場合は、snipMateなどのより優れたソリューションを提案します。 vim。

1

もっとも進化した方法は、実際にスニペットエンジンを使用することです。 snipMateが呼び出されました。

lh-cppのアドバンススニペットのルートであるmu-templateを維持しています。

関連する問題