
ファイルA の 2 行目から 4 行目とファイルB の 8 行目から 10 行目を比較するにはどうすればよいでしょうか?
また、行番号を書き留める代わりに、各ファイル内の行を視覚的に選択することは可能ですか?
ありがとう!
答え1
あなたが望む解決策は現在 Vim には存在しませんが、一部の開発者が議論しています。私が使用した解決策は 2 つあります。
1 つは、ファイル A の 1 行目とファイル B の 1 行目から 7 行目を削除し、残りの行を比較することです (例: :windo diffthis
)。
もう一つは、次のようなプラグインを使うことです。番号関心のある行を新しいバッファにコピーし、それらのバッファを比較します。NrrwRgn プラグインの優れた機能の 1 つは、新しいバッファに変更を加え、終了すると、変更が元のバッファにコピーされることです。
行の範囲を指定できるVimの操作では、その範囲はいくつかの方法で指定できます。1つは行番号を使用する方法です。もう1つは、行ごとに視覚的に領域を選択する方法です。
:help [range]
:help V
NrrwRgnプラグインを使用して例題を解決するには、カーソルをファイルAの2行目に置いて次のように入力します。
Vjj\nr
2行目から4行目までを視覚的に選択し(Vjj
)、新しいバッファにコピーします(\nr
)。次に、カーソルをファイルBの8行目に置き、同じシーケンスを繰り返します。2つの新しいバッファのそれぞれで、
:diffthis
エレガントではありませんが、機能します。