我真的很喜欢屏幕 cM 和 c-_ 中的监视功能,但是每当屏幕上发生事件(或者如果 c-_ 不发生)时,我正在监视的消息不会进入我拥有的硬状态行。
我真正想要的,但不知道该怎么做,是设置它,这样当监控事件发生时,屏幕的颜色就会改变。我认为这是可能的,因为我的活动屏幕是白色的,非活动屏幕是绿色的(在 hardstatusline 上)。
对我来说,这将是非常酷的实现......
编辑:好的,我相信我可以以某种方式做到这一点。我想要的是屏幕名称的颜色在活动停止 30 秒(或活动开始时,取决于它所处的模式)时更改。默认情况下,@ 放在名称之前。
这是我当前的硬状态行(我是从网站上复制的,所以我无法准确解释。) hardstatus string '%{= kG}[ %{G}%H %{g}][%= % {=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw% ?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'
我不认为这是可能的。当谈到窗口列表时,我看到了三种显示它们的方式:只有 %w 、 %-w %t %+w 和 %W 。为您提供最多控制权的是 %-w 和 %+w ,它们分别表示“当前之前的所有窗口”和“当前之后的所有窗口”。我无论如何都找不到自定义它们以使其成为 %-Lw 和 %+Lw ,从而可以显示标志。尽管状态字符串确实支持带有 %? ,在这种情况下这无济于事,因为标签栏大多是自动生成的。
但是,您可以使用活动命令更改通知消息的格式。
不能完全做到这一点(好吧,请继续阅读,也许你可以),但是有类似的东西怎么样:
在您的 screenrc 中,然后在每个屏幕中运行您的监控程序,该程序基于其活动级别使用字符串设置其屏幕标题:
这将允许您在标题行中查看活动状态(可能使用了固定宽度的字符串,例如 '.....'、'X....'、'XXXXX'。
也许有人有足够的 .screenrc mojo 来配置类似于以下内容的标题行:'显示窗口列表,但以某种颜色显示标题为“X”的任何窗口(也可能以另一种颜色显示“XX”)。或者,仅在活动上设置标题,并且仅在具有任何标题时突出显示窗口。我没有足够的魔力。