Недавно я попытался найти что-то подобное, в моем случае, для установки информации об окне (для команды Tmux select-window
) на что-то более информативное, чем значение по умолчанию .
На странице руководства соответствующая информация находится в разделе FORMATS , который также используется командами status- {left, right}
:
FORMATS
Некоторые команды принимают флаг -F с аргументом формата. Это строка , которая управляет форматом вывода команды. Замещающие переменные заключаются в '# {' и '}', например '# {session_name}'. Возможные переменные перечислены в таблице ниже или имя {{ 1}} параметр tmux может использоваться для значения параметра. У некоторых переменных есть более короткий псевдоним , например «#S», а «##» заменяется одним «#».
Условные выражения доступны с помощью префикса «?» И разделения двух альтернатив запятой; если указанная переменная существует и не равна нулю, выбирается первая альтернатива, в противном случае используется вторая. Например, "# {? Session_attached, прилагается, не прикреплен}" будет включать строку "прикреплен", если сеанс прикреплен, и строку "не прикреплен", если она не прикреплен, или '# {? automatic-rename, yes, no}' будет включать 'yes', если автоматическое переименование включено, или 'no', если нет.
Можно установить ограничение на длину результирующей строки, поставив перед ней знак «=», число и двоеточие. Положительные числа считаются с начала строки, а отрицательные - с конца, поэтому '# {= 5: pane_title}' будет включать не более первых 5 символов заголовка панели или { {1}} '# {= - 5: pane_title}' последние 5 символов. Добавление к переменной времени префикса 't:' преобразует ее в строку, поэтому, если '# {window_activity}' дает '1445765102', '# {t: window_activity}' дает 'Sun 25 октября, 09:25:02 2015 г. ». Префиксы «b:» и «d:» представляют собой базовое имя (3) и имя каталога (3) переменной соответственно. Префикс формы «s / foo / bar /:» заменит «foo» на «bar».
Кроме того, первая строка вывода команды оболочки может быть вставлена с помощью ‘# ()’. Например, ‘# (uptime)’ вставит время безотказной работы системы. При построении форматов tmux не ждет завершения команды ‘# ()’; вместо этого используется предыдущий результат выполнения той же команды или заполнитель , если команда ранее не выполнялась. Команды выполняются с установленным глобальным окружением tmux (см. Раздел ОКРУЖЕНИЕ ).
После некоторых попыток я не могу заставить встроенный sed
-подобный метод работать с именем каталога # {pane_current_path}
.Поскольку вы также можете использовать любую команду оболочки или переменные среды, вы можете просто использовать некоторые варианты
set status-left "# (basename $ {PWD})"
Я не знаю о совместимости Powerline, так как на данный момент я им не пользуюсь.
Все это было исправлено в следующем обновлении Chrome. Я не помню, какая это была версия -. Сейчас я нахожусь на 73.0.3683.86.