Чи можна зробити панель tmux “липкою”?


9

Чи можна зробити одну чи кілька панелей tmux "липкими"? Тобто ці панелі з'являться у всіх вікнах, які зараз доступні в моєму сеансі tmux?

Відповіді:


5

Це відбувається на список розсилки кожен раз в вигляді деякий час .

Ні, панель неможливо мати у кількох вікнах.

Внутрішня конструкція tmux дозволяє вікнам проводити кілька сеансів, але панель може належати лише до одного вікна.


3

Як каже Кріс, немає вбудованої функціональності, яка б дозволяла позначати панель як липку, і це має сенс, оскільки зовсім не очевидно, як поводитися з переструктуруванням усіх панелей на всіх інших вікнах коли ви перемикаєте "липкість" якоїсь конкретної області в поточному вікні. Як правило, поганим користувачем було б возитися з компонуванням таким чином, який навіть не видно користувачеві.

Вам може здатися корисною палітурку, як це:

bind -n M-k move-pane -t ':+'
bind -n M-j move-pane -t ':-'

Це було б зручно для користувачів Vim, які звикли J та K для переміщення вліво та вправо. Завдяки цьому прив'язці, tmux вступає та проковтує Alt+Kта Alt+Jпереміщує вашу активну область відповідно до правої та лівої вікон.

Він пошкодить поточне вікно, в якому ви знаходитесь, і вкладе його у сусіднє вікно tmux. Ви навіть можете, ймовірно, вказати, який індекс вставити панель у макет цільового вікна. Інші параметри, які можна надати, див move-pane. На сторінці сторінки.

Таким чином, звичайно, все ж є зміна макета (одна у вихідному вікні, яка неявна і обмежена однією панеллю, і одна у цільовому вікні, також обмежена однією панеллю і яка безпосередньо спостерігається), але це набагато більше "контролюється ", і поки ви тримаєте фокус на панелі, призначеній для" клейкої ", досягаєте своєї мети, більш-менш.

Я все ще вважаю це незадовільним через необхідність фокусування області, призначеної для "липкої", і це ускладнює швидке виконання цієї команди, якщо ви хочете мати клейку панель, яка завжди видно, але ви насправді ніколи насправді не фокусуєте її .

Існує можливість придумати трохи більш досконалий сценарій tmux, який використовує спеціальні назви для тієї панелі, яку ви плануєте бути клейкою та впорядкувати впорядкування для вас. Хоча це звучить як біль у попці.

Останнім варіантом розваг є використання вкладеного tmux: Помістіть вашу липку панель у батьківський tmux, а інша панель містить tmux, який розміщує решту ваших терміналів. Таким чином ви можете вільно перемикатися у вашій дитині tmux. Проблема в цьому полягає в тому, що вам потрібно буде придумати щось дієве, тому що за замовчуванням вам потрібно буде двічі натиснути клавішу префікса, щоб виконати ті самі завдання. Дуже дратує також. Я пов'язує, що інтелектуально "тунелюється" через будь-які вкладені тмукси, але логікою цих неефективних схем передачі повідомлень швидко стає важко керувати. І обмеженням у цьому є те, що "липка панель" має проходити на всю висоту чи ширину, вона не може бути кутом.

На закінчення я хотів би сказати, що це одна особливість, яку tmux повинен застосувати для нас, оскільки це майже неможливо зробити правильно зі сценарієм, однак я не знаю, як це насправді можна зробити непомітним (див. Моє перше речення ).


2
Я вважаю, що це варто, ніж допускати липке, оскільки насправді важко визначити, що робити з іншими вікнами, має бути клон-панель, який ті, хто справді хоче клейкості, можуть використати для досягнення того ж результату. І, чесно кажучи, саме клон, який я шукав, привів мене і сюди. Це було б гарною особливістю.
Tommi Kyntola
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.