Я использую копию GNU Screen, упакованную для Fedora 18.

Я скопировал эти аккуратные строки на мой .screenrc , чтобы показать мне host/date-time/windows:

# Neat status bar on the bottom of the screen
caption string "%?%F%{= Bk}%? %C%A %D %d-%m-%Y %{= kB} %t%= %?%F%{= Bk}%:%{= wk}%? %n "
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %d/%m %{W}%c %{g}]'

Иногда я запускаю вертикальное разделение (Ctrl a - |), и это приводит к тому, что другая строка состояния накладывается поверх строки состояния окна, которая у меня есть. Эта новая строка состояния показывает дату-время / имя-окна / номер-окна для каждого разделения. Теперь дата и время бесполезны. Я предпочел бы просто видеть идентификацию окна и ничего больше для каждого вертикального разделения.

Как подавить отображение даты и времени в разделенных по вертикали статусах?

Если вы хотите понять, что я имею в виду, вот скриншот. Посмотрите на строку № 2 в нижней части экрана:

Скриншот экрана GNU с двумя вертикальными расколами

1 ответ1

3

Это то, что вы получаете за копирование аккуратных строк вместо того, чтобы понимать их, особенно потому, что они уже выглядят как катастрофический результат слишком большого копирования ...

  • hardstatus alwayslastline
    Это означает, что вы хотите, чтобы строка, определенная как "hardstatus", всегда отображалась, и вы хотели, чтобы она заполняла последнюю строку вашего терминала.

  • hardstatus string <stuff>
    Это означает, что вы определяете, как должна выглядеть строка "hardstatus". Для подробностей прочитайте объяснение String Escape. Я начну тебя

    • %{= kG} Цвет (${}) установлен (=) на черный задний и светло-зеленый передний план (kG)
    • [_ буквальная квадратная скобка и пробел напечатаны,
    • %{G}%H_ цвет (%{}) снова (!?) установите светло-зеленый передний план (G), затем будет напечатано текущее имя хоста (%H), за которым следует буквальный пробел
    • %{g}][ цвет (%{}) установлен на темно-зеленый передний план (g), за которым следуют закрывающая и открывающая скобки
    • %=_ эластичное заполнение, за которым следует буквальный пробел (это гарантирует хотя бы один пробел)
    • %{= kw} цвет (%{}) установлен (=) на белый на черном (kw)
    • %?%-Lw%? это интересно, его нужно читать наизнанку: список имен окон (%w), если это применимо с флагами (L), но только для номеров окон меньше текущего (-); этот список печатается только при наличии непустого расширения (%? ..%? для "если" и "endif"), что здесь не имеет смысла, потому что нет ничего, кроме единственного расширения, которое в любом случае пусто.
    • %{r} изменить цвет (%{}) на красный передний план (r)

    ... и так далее, вы поняли идею. Он содержит несколько бессмысленных элементов, в том числе последний условный (который не нужен и явно не закрыт).

    • caption string <stuff>
      Это устанавливает специальный "заголовок", который будет отображаться в виде последней строки каждого региона. Вы можете выбрать, чтобы это отображалось всегда, или если у вас есть разделение (по умолчанию) с caption always или caption splitonly ; Вы не можете отключить его, но вы можете установить его в пустую строку. Я вызову исходное условие, которое полезно:
    • %?%F%{= Bk}%?
      %F означает «сделать это, если текущая область активна, даже если никакая escape-последовательность не расширяется до печатных символов». %{= Bk} устанавливает черный цвет ("k") на голубом.

Тем не мение. Что вы хотите сделать, это изменить эту подпись; Вы говорите, что хотите только "идентификацию окна для каждого вертикального разделения"; Я предполагаю, что вы в порядке с подсветкой цвета. Я бы использовал их, все исправлено:

hardstatus alwayslastline '%{= kG}[ %H ]%{g}[%= %{w}%-Lw%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%+Lw%= %{g}]%{G}[%{B} %d/%m %{W}%c %{G}]'
caption splitonly '%?%F%{= BW}%:%{= kg}%? %t %='

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .