1

ファイルを比較するとき、私はvimdiff(またはvim -d) を使用するのが好きで、vimdiff で変更をコピーする推奨される方法は次のとおりです。

]c               - advance to the next block with differences
[c               - reverse search for the previous block with differences
do (diff obtain) - bring changes from the other file to the current file
dp (diff put)    - send changes from the current file to the other file

そして私もそれを知っています

  • :diffgetと同じですdo

  • :diffputと同じですdp

これらのコマンドはすべて ( も含めて:diffput) 問題なく動作しますが、 を入力dpすると何も変化せず、エラー音が発生します。

これは、ホットキーを持つ vim-fugitive とのホットキー マッピングの競合によるものだと思いますdp

dp    :Git! diff (p for patch; use :Gw to apply)
dp    :Git add --intent-to-add (untracked files)

この問題を解決するにはどうすればよいですか? ありがとうございました。

4

2 に答える 2

1

を介してビルトイン マッピングを呼び出すこともできます:normal! dp

これが複数回必要な場合は、元のバッファローカル マッピングを未定義にすることをお勧めします。

:nunmap <buffer> dp

ただし、@Kent がコメントしているように、逃亡者のdpマッピングはプレビュー ウィンドウ(cp. :h fugitive-:Gstatus) でのみアクティブです。差分とマージには通常のウィンドウを使用する必要があるため、オーバーラップがあってはなりません。

于 2016-10-19T09:34:20.220 に答える
0

私は同じ問題を抱えていました。私のエラーはmap p、オペレーター保留モードでも p をマップすることでした。を試すことができますounmap p。私の場合、それはminiyank プラグインに関連していました

于 2017-02-01T14:25:31.750 に答える