Индикатор текущей панели Tmux при восстановлении фокуса

Я пытаюсь создать визуальный индикатор того, какая панель в настоящее время сфокусирована в tmux, когда мое окно терминала (iterm2, OSX) получает фокус. Я обнаружил, что iterm2 отправляет escape-последовательность получения фокуса (^[[I), поэтому теперь я пытаюсь найти, как я могу ее захватить, и запустить команду prefix q, которая показывает номера панелей с активной панелью в красном цвете.

Любые идеи о том, как захватить escape-последовательность в tmux ИЛИ в iterm2?


person Rory Stephenson    schedule 17.09.2014    source источник


Ответы (1)


У меня есть частичное решение моей проблемы, которое использует другой подход. Поскольку у меня обычно открыт vim и одна панель терминала, затемнение vim, когда он не сфокусирован, является хорошим индикатором того, какая панель активна. Для этого я модифицировал подключаемый модуль vim-diminactive, чтобы он реагировал на события фокуса (https://github.com/blueyed/vim-diminactive/pull/8), для этого требуется подключаемый модуль Vitality.vim, а также включение (события фокуса) в параметрах tmux.

Чтобы полностью решить мою проблему, я работаю над изменением цвета фона окон терминала, когда они теряют фокус. Я использую zsh, поэтому я могу зафиксировать событие фокуса с помощью bindkey (я проверил, что это работает), чтобы выдать escape-код изменения цвета фона для iterm2, однако это, похоже, не влияет на tmux.

person Rory Stephenson    schedule 18.09.2014