问题 : 我有两个并排拆分的缓冲区。我移动到左缓冲区中的一行,我想做一些事情,将右缓冲区中的点移动到相同的行号。例如,如果我在左侧缓冲区的第 26 行,我运行某种宏,瞧,我在右侧缓冲区的第 26 行。
我尝试过的事情并没有像我喜欢的那样奏效(或根本没有):
scroll-all-mode
.如果缓冲区开始同步(例如,点在两个缓冲区中的同一行号上)并且我坚持基本的行移动,它就可以工作。但是如果我 isearch-forward-regexp
,它很快就会失去同步。或向上翻页/向下翻页。如果有一个可以“重新同步”的命令,那么这解决了我的问题。 goto-line
中使用该寄存器值.保存和恢复位置总是回到同一个缓冲区。 最佳答案
这段 Emacs Lisp 应该做你想做的事:
(goto-line (line-number-at-pos) (window-buffer (next-window))
要将其绑定(bind)到键序列,
(global-set-key (kbd "C-c l")
(lambda ()
(interactive)
(goto-line (line-number-at-pos) (window-buffer (next-window)))))
关于emacs - 将一个缓冲区中的点移动到与不同缓冲区中的点相同的行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6286459/