2012-09-24 13 views
22

Vimmersは.が簡単な変更を繰り返すことができることを知っています。私は繰り返すことができるかどうかのリストを作成しようとしましたが、リストはありますか? ドットコマンドは何を正確に繰り返すことができますか?

は、私は繰り返し可能であることを知っているリストしてみました:

  • テキスト挿入:aAiIo、レジスタを含むO
  • テキストの変更、彼らはすべてのノーマルモードコマンドです:cCdDpgpPgPsSxX
  • その他のテキストの変更:これらの操作の等価JgJrgrRgRgUgugwgqg?~g~<>=
  • 視覚モードで。
  • コントロールオペレーション:C-A
  • giC-Xがない最後の挿入位置に、現在のカーソル位置に挿入が、を繰り返すことになります。だからの種類の作品。

しかし、それは含まれません。

  • をすべて移動し、表示するコマンド(ここに記載されていることには多すぎる)
  • (また、Z-コマンド、数多くの)すべての倍のコマンド
  • マーク( m
  • 置換リピート(&g&
  • 結腸またはフィルタコマンド(マクロの録音または再生(qまたは@)は、録音中または再生中に最後に繰り返されるアクションを繰り返します)。
  • デフ入れてもらう(dpdo
  • 元に戻す(uUC-R
  • ヤンク(y

私はtpopeのrepeatプラグインは、カスタムを持っているプラ​​グインの繰り返しを購読することができますことを知っています機構。しかし、デフォルトでは、上記のリストは良いですか?

+0

です。私は頭の上から何も考えられませんが、その声明と矛盾しています(しかし、私はしばらくの間、vimを使用していないので、事態は曖昧になっています)。おそらく、 '元に戻す 'が元に戻すことのリストを見つけることは、' .'が繰り返すもののリストを見つけることよりも簡単かもしれません。 –

+0

@RandyMorris "元に戻す"は、コマンドライン(例:s/foo/bar /)の変更を取り消すことができますが、 "。"それらを繰り返すことはできません。 – Kent

+0

AFAK、 "c、C、..."は "。"を使用して繰り返すことができます。 –

答えて

2

v/Vとの組み合わせも「ドット」を繰り返すことができます。

Vgq、V/VUまたはV/Vuの

4

私は変更は、現在のバッファを変更する任意のコマンドであると考えています。 .コマンドはExコマンドを除外しています(遠い歴史の中でviにボルト止めされた別のモードだからです)、オプションでyanksを含めることができます。

あなたのリストには、Exコマンド用にフィルタされた:help change.txtがおそらく最も良いソースです。

変更コマンドを適用できない場合(ビープ音が鳴った場合)、リピートに登録されていないことに注意してください。コマンドの実行は成功しなければなりません。

+1

あなたの答えは直感的に正確ですが、 '.'は'& 'や' g& 'を繰り返さないためではありません。 – Benoit

+1

'&'と 'g&'自身がコマンド(最後の ':s')を繰り返すので、それらを除外する理由があると思います。 – rburny

2

ティム・ポープのrepeat.vimは、repeatなど多くのもの(surround.vimなどのものを含む)を作ることができます。

動きを繰り返すには、/を見てください。(正逆方向)。 @、Exコマンドを繰り返す

:は、私はそれはおそらくundo`を元に戻すだろう `というものを繰り返し言って、ベンチャーだろう良いキーの組み合わせ

+0

私はrepeat.vimについて知っています(質問に記載されています)。はい、 ';、'は 'fFtT'モーションを繰り返すことができます。たぶん「nN」も言及します。 – Benoit

+0

@Benoit Oh。私はその言葉を完全に見過ごした。私は '/ repeat'を使ってページ全体の言及をスキャンすると思います...残念です – sehe

関連する問題