2

每次我有超过 4 个选项卡时,我真的很想知道哪个选项卡有活动。直到现在,我一直受益于 rxvt 选项卡系统。它在未显示但有活动的选项卡旁边显示一个 *。例如,当您在 IRC 频道上时,它非常有用。我怎么能用 zsh/screen 做到这一点?

这是我的 .zshrc :

function precmd {
  echo -ne "\033]83;title zsh\007"
}

function preexec {
  local foo="$2 "
  local bar=${${=foo}[1]}
  echo -ne "\033]83;title $bar\007"
}

和我的 .screenrc

hardstatus off
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W} %c %{g}]'

[...]
shell "/usr/bin/zsh"

aclchg :window: -rwx #?
aclchg :window: +x title
4

1 回答 1

0

这记录在手册中:

  monitor [on|off]

   Toggles  activity  monitoring  of  windows.   When  monitoring is
   turned on and an affected window is switched into the background,
   you  will receive the activity notification message in the status
   line at the first sign of output and  the  window  will  also  be
   marked  with  an `@' in the window-status display.  Monitoring is
   initially off for all windows.

您可以通过 手动切换当前窗口的监控C-a M,或者如果您希望默认监控所有窗口,请添加defmonitor on到您的screenrc. 一旦打开,您的 hardstatus 行中当前窗口左侧或右侧的任何窗口(分别在您的 行中由%-Lw和扩展)将在窗口编号后面的连字符后显示一个符号。您还将收到一条可以通过命令配置的警报消息。%+Lwhardstatus string@activity

在我的系统上,@直到窗口中的其他内容发生更改才会出现。这可以通过hardstatus off从配置文件中删除来解决。

最后,强烈推荐大家试试tmux。GNU screen 上的开发大多停滞不前,并且tmux是一个积极维护和开发的替代品,它具有相当大的 screen 功能超集

 

于 2013-09-29T09:57:13.563 回答