Emacs ediff-buffers将* all * diffs从a复制到b(反之亦然)

时间:2018-03-23 14:56:21

标签: emacs

当使用ediff-buffers时,有一种方法可以用一个键将所有差异从a复制到b(或从b复制到a),而不必单独使用'a'或'b'遍历每个差异键?

1 个答案:

答案 0 :(得分:0)

您可以使用键盘宏来执行此操作。以下是键盘按下示例。

  1. j + 1
  2. p (这意味着跳转到第一个差异之前的位置)
  3. F3 (开始录制宏)
  4. n
  5. a (或 b ,具体取决于您要使用哪个缓冲区的内容)
  6. F4 (完整录制键盘宏)
  7. Ctrl + u (用于复制编号参数)
  8. 输入足够大的数字(大于差异总数)
  9. F4

一切都做好了!

如果保存键盘宏,则步骤1至步骤6仅需要执行一次。但是我认为即使不保存宏也能正常工作。该解决方案的问题是性能。如果您有成千上万个差异,则可能需要一段时间才能完成操作。