2

私はこれについて微妙でばかげた何かを見逃しています。短いvimスクリプトがあります。その中で、私はやろうとしています:

s/.*_____.*/\=repeat('=', 78)/

(これが正確なコードです。)

通常モードで行う/\v.*____.*と、パターンを正常に見つけることができます(複数回)。通常モードでその置換を行うと、成功します。

どこかでキャラクターを逃がす限り、何かが足りないと確信しています。教えてください!

4

1 に答える 1

1

s/コマンドは現在の行のみをカバーします。これはあなたが通常望むものではありません。

最も簡単なアプローチは%s/...、バッファ全体を処理するために使用することです。ただし、マッピング/コマンドで任意の範囲をサポートしたい場合があります。そのため:call、範囲自体を処理する関数を定義しない限り、通常は行ごとに1回ユーザー定義関数を呼び出します。詳細:help function-range-exampleはをご覧ください。

于 2012-09-19T19:37:30.233 に答える