我可以禁用特定帧中的窗口分割吗?

时间:2014-05-06 17:26:03

标签: emacs elisp

我是使用emacs的开发人员。在emacs中,我使用多个框架(大多数人称之为X窗口),以及编译函数用于我的构建。我喜欢为我的编译缓冲区设置一个框架,其他框架用于源代码。这使我能够轻松地导航以构建错误,并获得一个很好的源视图,我可以调查我的构建输出的大视图。当我使用' next-error'来自源框架的功能。

但是,当我将指针移动到编译框架中并单击错误时,它会垂直拆分该框架以显示相关的源。我希望它在我的其他一个框架中显示相关的来源。

有没有办法锁定"一个框架,以便它不会被拆分成窗口,所以其他框架将被使用?我好如果它拆分我的其他一个框架以显示新的源文件 - 只是不是编译框架(因为这意味着我必须拆开那个框架然后切换一个框架的缓冲区)不同的框架显示有问题的缓冲区 - 这很麻烦。

或者,如果我可以在编译缓冲区中的错误上使用不同的鼠标按钮来表示&#34;访问此文件并在另一帧中排队&#34;。< / p>

1 个答案:

答案 0 :(得分:1)

我相信你可以通过在“编译框架”dedicated中创建窗口来实现目标:

  

通过将这些窗口标记为专用于缓冲区的窗口,可以告知不显示缓冲区的功能。

互动地,M-x set-window-dedicated-p应该使您的窗口专用。

来自elisp,类似

(set-window-dedicated-p (selected-window) 1)

应该这样做。用1替换t将使窗口强烈专用

  

作为一种特殊情况,如果标志t,则窗口将强烈专用于其缓冲区。 set-window-buffer在其所作用的窗口强烈专用于其缓冲区并且尚未显示要求显示的缓冲区时发出错误信号。其他功能不会将t与任何非nil值区别对待。