Как показать в жестком статусе GNU Screen, какая вкладка была выбрана ранее?

Каждый раз, когда я работаю в консоли, я использую GNU Screen. У меня есть собственный файл .screenrc с несколькими настройками. Среди прочего у меня есть настройка, которая показывает «вкладки» внизу:

hardstatus alwayslastline
hardstatus string "%{= g} %{= w}%-w%{=r}%n %t%{-}%+W"

Это работает хорошо, но я хочу добавить к вкладкам какой-нибудь символ, показывающий, какая вкладка была ранее активной. Как это может быть сделано?


person bessarabov    schedule 03.12.2011    source источник


Ответы (2)


Увы, комментарии поддерживают лишь некоторые возможности форматирования, поэтому я создал новый ответ.

1) После каждого номера вкладки есть некоторый символ «$», который не нужен

С hardstatus string "%{= g} %{= w}%-Lw%{=r}%n%f* %t%{-}%+LW" я не вижу никаких «$»:

введите здесь описание изображения

2) символы '' и '-' делают вкладку на один символ шире и из-за этого вкладки немного прыгают. Я думаю, что это можно решить, поставив пробел, если нет символов '' и '-'.

Увы, все вкладки, кроме selected, не настраиваются - они просто отображаются, если в строке hardstatus используются %w (все окна, включая текущее) или %W (все окна, кроме текущего). Эти escape-последовательности могут начинаться с - или + (для отображения окон до или после текущего) и L (для отображения флагов окна). Пробелы, или форматирование, или содержание этих частей строки не настраиваются - у них есть только номер таба, заголовок и опционально флаги с фиксированными отступами.

3) Символ '*' не нужен, так как есть еще и цветовое выделение текущей вкладки.

Конечно, вы можете заменить * пробелом после %f в строке жесткого статуса с двумя пробелами (извините за странное предложение, но текстовый движок SO странно съедает пробелы в обратных кавычках) - но без настройки пробелов после номера вкладки для неактивных и непоследних вкладок они продолжайте «прыгать».

person Andrey Starodubtsev    schedule 04.03.2012
comment
Спасибо. =) Это не решает всех моих проблем, но все равно спасибо за такой подробный ответ. - person bessarabov; 05.03.2012

Вы можете использовать следующую строку:

hardstatus string "%{= g} %{= w}%-Lw%{=r}%n%f* %t%{-}%+LW"

При этом окно с фокусом будет отмечено символом '*', а предыдущее - знаком '-'.

person Andrey Starodubtsev    schedule 21.02.2012
comment
Благодарю вас! Это здорово, но это не совсем то, что мне нужно. Я пытался сам понять, как это исправить, но у меня ничего не вышло. 1) После каждого номера вкладки есть некоторый символ '$', который не нужен 2) символы '' и '-' делают вкладку на один символ шире и из-за этого вкладки немного прыгают. Я думаю, что это можно решить, поставив пробел, если нет символов '' и '-'. 3) Символ '*' не нужен, так как есть еще и цветовое выделение текущей вкладки. - person bessarabov; 27.02.2012