VimDiff:特定の関数内にあるすべての変更をあるファイルから別のファイルに置く方法は?

StackOverflow https://stackoverflow.com/questions/6093746

  •  09-09-2020
  •  | 
  •  

質問

vimdiffでは、あるファイルから他のファイルへの変更を移動するには、「DO」または「DP」を使用できることを知っていますが、これらは個々の変更のためのものです。特定のスコープ/選択内のすべての変更を元に戻す必要がある場合(すべての変更が特定の機能への変更を元に戻すが、残りを手に入れたままにする)は、1つのGOで実行する方法はありますか?

役に立ちましたか?

解決

視覚選択とexコマンド:diffget / :diffput

を使用できます。 たとえば、コードブロックの現在の内部にある単なる変更を取得するため({...})

Vi}:diffget<Enter>
.

put 括弧付きの線を含む2つの囲みレベルの変化:

V2a}:diffput<Enter>
.

これらはEXコマンドであるため、動きはリニアイズされています。もちろん、任意の範囲を使用することができますので、視覚範囲を繰り返すことも、マーカーを使用することもできます

:'a,'bdiffput
.

など。あなたの想像力を使う、これはvim :)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top