Я хотел бы иметь возможность указать дополнительный параметр размера для конкретной панели, чтобы он назначал новый размер при фокусировании панели и возвращал его при выходе. Так, например.
(Примечание []
представляет сфокусированный терминальный курсор)
________________
|$ ls | |
|a's | |
|dir | |
|$ |$ [] |
|______|_______|
Переключить фокус панели
_______________
| | |
|$ ls | |
|a's dir | |
|$ [] |$ |
|________|____|
И так далее. Особенно это будет круто, так как изменение размера панелей в последних версиях tmux позволяет отлично справляться с повторным потоком контента, а не с его нарезкой.
В этом примере ширина левой панели настроена на автоматическое переключение на 8 столбцов, когда она находится в фокусе, и она становится тоньше, когда теряет фокус. Обратите внимание, что содержимое по-прежнему видно (в конце концов, именно поэтому мы любим tmux), но мы все еще можем съесть наш пирог, позволив текущей активной панели автоматически расширяться, чтобы она всегда была достаточно большой, чтобы в ней можно было работать!
Я, вероятно, могу придумать несколько сложных привязок, чтобы автоматизировать применение resize-pane
команд для этого, и сделать его достаточно сложным, чтобы удовлетворить мои пожелания. Но я надеялся, что для этого есть какая-то встроенная функция.
Было бы целесообразно отслеживать и разрешать модификацию вспомогательной четверки целых чисел для каждой панели. Они определяют количество resize-pane -L/D/U/R
операций, выполняемых при фокусировке этой панели, и обратное направление при расфокусировке этой панели.
Могут быть и другие, более разумные формулировки этого.