gpt4 book ai didi

Emacs:是否可以将一个特定窗口设置为始终用作 "other window"?

转载 作者:行者123 更新时间:2023-12-04 21:16:28 24 4
gpt4 key购买 nike

有许多有用的 emacs 命令可以在“其他窗口”中执行操作(例如 C-x C-b 查看缓冲区列表,或 C-h a 查看可用命令,或许多其他命令)。

我的问题:在一个框架中使用多个精心安排的窗口,每个窗口都显示特定的内容,这似乎不太好。

每当我使用这些“其他窗口”命令之一时,它都会替换其他某个窗口的内容,这些窗口 (1) 可能太窄而无法清楚地显示正在显示的信息,并且 (2) 可能需要手动“清理”之后,通过将其设置回正确的缓冲区。 (这样做时你最好不要检查缓冲区列表,否则你会搞砸另一个窗口!)

(Emacs 甚至不总是使用相同的“其他窗口”,即使命令是从同一窗口发出的。例如,C-x C-b 输出可能会进入一个“其他”窗口,而 C-h a 在一个窗口中显示其结果不同的“其他”窗口。同样,C-M-v 有时会滚动与刚刚出现输出的窗口不同的“其他”窗口。)

我想要一种解决或解决此问题的方法,例如:

  • 我真的很想能够指定一个特定的窗口,以便始终用作该框架中任何窗口的“其他窗口”。
  • 如果做不到这一点,也许有一种方法可以重新排列窗口顺序和/或使用不可见窗口(如果存在)通过执行大量幕后窗口改组来获得解决方案 1 的效果,可能需要额外的命令来在写入“其他窗口”的命令之前或最好在之后输入。
  • 如果失败,我想要一个命令来撤消任何窗口中最近的缓冲区更改,因此无论使用什么窗口,都可以恢复到使用前显示的内容。

  • (目前我使用 workgroups.el 并且我使用一个单独的工作组来检查文档,但这显然是次优的。“更新”工作组没有实现解决方案 3,因为它似乎只会将缓冲区更改回常规文件.)

    编辑:我看到这个问题与 this similar question 非常相似,但是这个问题没有得到它想要的答案。由于理想的解决方案可能不存在,因此我对变通方法也很感兴趣。

    最佳答案

    Failing those, I would like a command that undoes the most recent buffer change in any window, so whatever window was used goes back to what it was showing just before it was used.



    一个可能的解决方案是使用 winner-mode .通过添加激活它
    (winner-mode 1)

    它提供了两个命令 winner-undowinner-redo分别撤消和重做窗口配置。

    也因为你提到 workgroups.el试一试 workgroups2 ,workgroups.el 的一个分支。它提供了类似的命令( wg-undo-wconfig-changewg-redo-wconfig-change )来恢复窗口配置

    关于Emacs:是否可以将一个特定窗口设置为始终用作 "other window"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22185495/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com