問題タブ [vimdiff]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - Git で Vimdiff を使用しているときに bufspec を取得する方法
Vimdiffを読み、 Vimdiffとの違いを表示することに加えて、「vimdiff multiple」、「vimdiff git」、「vimdiff コマンド」などを使用してさまざまな Google 検索を行い ました。
do または diffg を使用すると、「差分モードに 2 つ以上のバッファがあります。どちらを使用すればよいかわかりません」というエラーが表示されます。
diffg v:fname_in を使用すると、「v:fname_in に一致するバッファがありません」というメッセージが表示されます。
vimdiff のドキュメントから:
:[range]diffg[et] [bufspec]
現在のバッファを変更して、別のバッファとの違いを元に戻します。[bufspec] が指定されている場合、そのバッファーが使用されます。[bufspec] が現在のバッファを参照している場合、何も起こりません。それ以外の場合、これは diff モードで別のバッファーが 1 つある場合にのみ機能します。
もっと:
'diffexpr' が空でない場合、Vim は上記の形式で差分ファイルを取得するために評価します。これらの変数は、使用されるファイル名に設定されます。
v:fname_in 元のファイル
v:fname_new 同じファイルの新しいバージョン
v:fname_out 結果の差分ファイル
そのため、bufspec の名前を取得する必要がありますが、デフォルトの変数 (fname_in、fname_new、および fname_out) が設定されていません。
ターミナルを介してLinuxボックスでコマンドgit mergetoolを実行しました。
[編集] より多くの疑問を生んだ部分的な解決策。バッファの下部にある「ファイル名」を使用しました。ファイルが存在しないというエラーが時々発生するため、半分の答えにすぎません。「存在しない」のは一貫してファイルのリモートバージョンだと思います。これは git とインデックス作成に関係があると思われます。
git-mergetool で vimdiff を使用しているときに、一貫して bufspec 値を取得するにはどうすればよいですか?
vim - 具体的には、逃亡者の場合、vimでvimdiffモードを終了するにはどうすればよいですか?
fugitive extensionで vim を使用しています。vimdiff モードに入る :Gdiff コマンドがありますが、vimdiff モードを閉じる/終了する正しい/迅速な方法は何ですか?
つまり、Git リポジトリで FooBar.txt ファイルを編集しているとしましょう。:Gdiff を起動し、vimdiff で変更を確認してから、戻って FooBar.txt またはその他のファイルの編集を続けたい :)
更新 1:翌営業日にこれらのクイック コンボを試してみます :)
UPDATE2:現在のマッピング (差分ウィンドウのみを閉じます!)
また、以下が答えになるかどうかを判断するのを手伝ってください:https://stackoverflow.com/a/15975201/275980
git - 外部のgitdiffをキャンセルするにはどうすればよいですか?
外部のdiffツールとしてvimをセットアップしました:
変更されたファイルが300個あるとします。bash経由で、「gitdiff」と入力します。300個のvimdiffを順番に起動しますが、どうすれば中止できますか?
vim - Vimの同じファイルにある2つのサブルーチンを「比較」するにはどうすればよいですか?
同じファイルで2つの非常に類似したサブルーチンが発生する可能性はありますdiff
か?vimdiff
もしそうなら、どのように?
2つのサブルーチンを2つの別々のファイルにコピーしてからそれらをコピーすることを考えることができますがdiff
、元のファイル内でそれを行う方法はありますか?
vim - vimdiffで非差分ウィンドウを開きます
時々私はvimdiffを使用していて、コードを取得して、後で参照できるように3番目のウィンドウ/バッファーにドロップしたいと思っています。ただし、そのウィンドウが開いていると、ほぼすべてが差分として識別されます(他の2つのファイルとは意図的に異なるため)。vimdiffの使用中に非差分モードでウィンドウを開くにはどうすればよいですか?
git - vimdiffですべての`gitdiffs`を表示する
「 GitDiffwithVimdiffgit diff
」をガイドとして使用して、vimdiffにラップするように設定しましたが、変更されたファイルが多数ない限り、期待どおりに機能しています。
変更が加えられたファイルが複数あり、を実行するとgit diff
、最初のファイルが開き、vimdiffの最初のインスタンスを終了した後、次のメッセージが表示されます。
これは、私が慣れているものとはまったく異なる動作です。私は過去にSVNで同様の設定をしていましたが、複数のファイルと比較する場合は、最初のファイルを確認してから、書き込みを終了して使用を終了する:wq
と、違いのある次のファイルが開きます。
これはGitには当てはまりません。試し:n[ext]
ましたが、左側のウィンドウが元のファイルで埋められないため、変更されたバージョンと比較できます。
vim - Vimで2つの垂直に開いたウィンドウの差分を取ります
2つのファイルを開いています。それらは、次の隣に垂直モードで開かれます。Vimを離れたり閉じたりせずに、これら2つのファイルを即座に比較できますか?
linux - diff コマンドのいくつかの違いを無視するには?
diff
-I regexp
指定された正規表現に一致する行を挿入または削除するだけの変更を無視するオプションがあります。変更が2行の間にある場合(行を挿入または削除するのではなく)、これに類似したものが必要です。
たとえば、与えられた と に対して"abXd"
との間のようなすべての違いを無視したいと思います。"abYd"
X
Y
そんなdiff
能力はないようだ。に適した代替手段はありdiff
ますか?
vim - なぜVimDiffはそれほど制限されているのですか?
Vimの高度な編集機能をすべて備えているので、VimDiffに右/左から/右/左にコピーする方法がないことは信じられません!! difftoolは他に何に使用できますか?何か案が?VimDiffの機能は何ですか?
また、次/前の違いに移行する方法すらわかりません!!
svn - svn-diffに使用するときに異なる色を表示するようにvim-diffを構成します
以下の行を追加して、デフォルトのsvn-diffツールとして「vimdiff」を設定しました。~/.subversion/config
diffwrap.sh
ただし、vimdiffは、すべての醜い色を使用して差分を表示します。背景が黒でフォントの色が緑ですが、この差分のカスタム色を表示するようにvimdiffを変更するにはどうすればよいですか?同じことでもっと楽しい体験をしたいです。