【发布时间】:2011-06-08 23:25:05
【问题描述】:
问题:我有两个并排拆分的缓冲区。我移动到左侧缓冲区中的一行,我想做 something 将右侧缓冲区中的点移动到相同的行号。例如,如果我在左侧缓冲区的第 26 行,我运行某种宏,瞧,我在右侧缓冲区的第 26 行。
我尝试过的事情并没有像我喜欢的那样奏效(或根本没有):
-
scroll-all-mode。如果缓冲区开始同步(例如,点在两个缓冲区中的同一行号上)并且我坚持基本的行移动,它就可以工作。但如果我isearch-forward-regexp或向上翻页/向下翻页,它很快就会失去同步。如果有一个可以“重新同步”的命令,那么这就解决了我的问题。 - 将当前行号保存在寄存器中,并在
goto-line中使用该寄存器值。保存和恢复位置总是回到同一个缓冲区。
【问题讨论】:
-
如果您实际上不需要移动点(
hl-line-mode可以在某种程度上弥补这一点),我注意到2C自动滚动功能使缓冲区保持同步比scroll-all-mode更好。可悲的是,将两者结合起来并没有达到预期的效果。见M-: (info "(emacs) Two-Column") RET -
@Ben 你是说你想比较两个缓冲区/文件吗?如果是这样,请使用
ediff-files或ediff-buffers。
标签: emacs