【问题标题】:How do I stop Emacs from changing my split buffers?如何阻止 Emacs 更改我的拆分缓冲区?
【发布时间】:2010-09-18 16:46:42
【问题描述】:

我打开了许多拆分,查看各种缓冲区。但是,例如,当我检查某个函数的帮助时,它将用帮助缓冲区替换其中一个拆分。阅读完帮助后,我必须手动返回正确的缓冲区,这很痛苦。如何让 Emacs 对我的缓冲区更好?

更新:帮助将让您按q 回到上一个缓冲区。但是导致 Emacs 回溯弹出也窃取了我的一个缓冲区窗口并且它没有q

更新: Backtrace 确实有 q 可以返回。我最初的问题仍然存在:我如何要求 Emacs 不要窃取我的拆分之一?

【问题讨论】:

    标签: emacs


    【解决方案1】:

    添加行

    (push "*Help*" special-display-buffer-names)
    到初始化文件应该使帮助缓冲区的后续调用出现在它自己的框架中(桌面通常称为“窗口”) , 并保留原始框架及其配置。

    Special Buffer Frames

    【讨论】:

    • 美丽。我现在只需要将“删除帧”重新绑定到比 C-x 5 0 更方便的东西,我就准备好了。我不能对这个问题和这个答案给予足够的支持!
    【解决方案2】:

    您也可以使用赢家模式。不久前出现在planet.emacsen.org 上。

    赢家模式是一种全局次要模式。激活后,它允许使用“C-c 左”和“C-c 右”键命令“撤消”(和“重做”)窗口配置中的更改。

    这样,您可以在拆分发生后立即撤消对拆分的任何更改。

    【讨论】:

      【解决方案3】:

      希望对你有帮助:

      • C-x 0 删除当前窗口

      • C-x 1 只保留当前窗口

      • 您可以通过在 .emacs 中添加以下行来使用 windmove:

      (windmove-default-keybindings)

      然后,您可以使用 S-right S-left S-upS-down 在窗口之间移动点

      有很多方法可以存储和恢复 emacs 窗口,请参阅 emacswiki.org on the subject

      【讨论】:

      • 好吧,我把窗口分成了四个象限,显示了我要查看的文件。移除窗户会打乱这种安排,这是我首先遇到的问题。
      • 存储窗口排列的方法有很多。我更新了我对 emacswiki.org 链接的回答。
      • 我不需要存储或恢复安排,我宁愿 emacs 不会弄乱我所拥有的。我希望程序做我想做的事情,而不是相反。
      【解决方案4】:

      我所做的只是转到更改后的缓冲区,C-x k 它,该窗口中的当前缓冲区将是前一个缓冲区。

      可以为保存当前窗口和缓冲区状态并使用简单的键绑定恢复它的帮助定义建议。但这超出了我的基本 elisp 知识范围。

      【讨论】:

      • 我刚刚注意到它弹出一条消息说'按q恢复此窗口'。看看这是否适用于这个编辑会话。
      • 我有一个模糊的回忆,Aquamacs 中的默认自定义会导致帮助在新框架中打开,而不是在当前框架中打开窗口。如果是这样,您可能只是看看他们是如何做到的并复制他们的代码。
      • 我更喜欢帮助/回溯等完全不会干扰我的缓冲区的解决方案。目前最好有一个弹出窗口!
      猜你喜欢
      • 2010-12-22
      • 2011-01-06
      • 2011-09-21
      • 2014-10-05
      • 1970-01-01
      • 1970-01-01
      • 2011-03-24
      • 1970-01-01
      • 2016-01-22
      相关资源
      最近更新 更多