2013-04-08 79 views
2

我使用拆分Emacs框架将窗口移动到更方便的状态。 然而,有两件事情打扰我,我不知道他们是可以改变的:在Emacs中拆分窗口 - Tabbar只显示活动缓冲区

  1. 我使用的TabBar,和所有缓冲区当前打开的节目上的所有窗口拆分。我只想要可用于当前分割的缓冲区出现。 所以,如果我有somefile.org打开顶部拆分和anotherfile.org底部,我想只有相应的一个出现在每个标签栏列表(顶部和底部)。

  2. 我不知道是否有可能将模式行配置为仅在底部出现一次,并在我移动到其他窗口时刷新它。 沿着tmux的行,对那些知道的人来说 - 信息根据我当前所在的窗口而改变(尽管它叫做窗格)。

编辑:

关于第1点:

说我有2个开放式缓冲器 - file1.txtfile2.txt。第一个显示在顶部垂直分割中,另一个在底部。我想顶部的tabbar只显示file1.txt,底部只显示file2.txt

+0

我感到困惑项目#1(这当然是可能的,但似乎毫无意义),但我相信你只是想在*结合*与第2项(这将导致你会失去信息,其中一些你会用#1获得回报)。我不认为#2是可能的。 – phils 2013-04-08 21:41:38

+0

编辑原文,解释我需要什么。我不是问是否毫无意义,而是如何实现这一目标。 – CrimsonKing 2013-04-09 19:34:52

回答

0

这里是第1题答案:

(setq tabbar-buffer-groups-function (lambda() (list 
    (if (eq (get-buffer-window (current-buffer)) (car (window-list))) 
    "my-active-buffer" 
    "not-used")))) 

我相信@phils是正确的有关问题,2号 - 也就是说,它是不可能的,而无需修改底层的“C”源代码使Emacs成为现实。


这里是质疑,使非活动窗口的模式线的颜色相同缓冲液的背景的背景数2的替代方法。原始海报可以采用该代码,并使非活动模式行的文本与缓冲区的背景颜色相同,从而使非活动模式行完全不可见。但是,可见模式行自然会将位置切换到任何一个窗口处于活动状态。

https://stackoverflow.com/a/20936397/2112489

Example http://www.lawlist.com/images/modeline-example.png

相关问题