emacs - 将一个缓冲区中的点移动到与不同缓冲区中的点相同的行号

标签 emacs

问题 : 我有两个并排拆分的缓冲区。我移动到左缓冲区中的一行,我想做一些事情,将右缓冲区中的点移动到相同的行号。例如,如果我在左侧缓冲区的第 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/

    相关文章:

    macos - Home/end 控制字符在 Mac OS X 终端下的 emacs 中不起作用

    emacs - 在 Emacs Lisp 中插入整月的日期

    macos - 如何阻止 Emacs 回退到光栅化的 Unicode 字符?

    Emacs 设置 which-function-mode

    emacs - 使用 let-bound 变量穿透 `set-process-sentinel` 层次结构

    Emacs 中 Notepad++ 中的 Python 脚本错误

    emacs - 确定模式行中的窗口焦点?

    emacs - 与 AUCTeX 一起使用时,在 $0 后以 % 结尾的 yasnippets 行为很奇怪

    linux - Emacs solarized 主题在终端中看起来很奇怪,暗模式不起作用

    emacs - 上移箭头不突出显示文本 emacs iterm2