4

一行で私はこれを回そうとしています:

"".format(...)

これに:

"{0}, {1}, {2}, ..... {n}".format(...)

n繰り返したい要素の数はどこですか。各引数を手動で挿入する必要はありません。

4

4 に答える 4

4

この方法で問題ないかどうかはわかりません。

"I(cursor here)
".format(...)

コマンドの実行:

:r! seq -s, -f "{\%g}" 0 20

J次に、3行を結合( )します。20はnあなたの場合です。

また"I".format(...)

モードを挿入するには、次のようにctrl-R入力します=system("seq -s, -f '{%g}' 0 20")

于 2012-10-18T15:42:32.837 に答える
2

空の二重引用符の間にカーソルを置いて、次のようにします (for n= 5):

i<C-R>=join(map(range(5), 'printf("{%d}", v:val)'), ', ')<CR>

一部のvimgolf愛好家は、おそらくこれをさらに要約できます。しかし、私はおそらくそのためのマッピングを作成するか (必要が頻繁に発生する場合)、次のように手動で行います。

5i{0}, <Esc>^f0;<C-A>;2<C-A>;3<C-A>;4<C-A>
于 2012-10-18T15:46:34.563 に答える
0

Windowsには「seq」コマンドがないので、私はこれを好みます:

:call append(".", map(range(6), '"{".v:val."},"'))

そして、これらの行を「6J」で結合します。

于 2013-04-09T08:06:13.247 に答える
0

次のようなマクロを使用します。

0a{0}, <esc>lqqyF{f"PB<C-a>;q

次に、 n-1 が であるものを使用し@qます。たとえば、次の4@qXXようになります。

"{0}, {1}, {2}, {3}, {4}, {5}".format(...)
于 2012-10-18T15:59:05.963 に答える