Як ви можете визначити, яка область у Tmux сфокусована?


83

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

Відповіді:


100

Ось відповідні налаштування:

pane-active-border-bg colour

pane-active-border-fg colour
    Set the pane border colour for the currently active pane.

Отже, спробуйте додати щось подібне до свого ~/.tmux.conf:

set-option -g pane-active-border-fg blue

Це встановить синю межу навколо активної панелі. pane-active-border-bgОпція може бути використана для більш відомого розчину, а також.


1
Я не бачу цієї опції на моїй сторінці користувача, і вона не розпізнається моєю версією tmux.
дан

2
Дякую, що повідомили. Прикро, але tmux, здається, не має способу показати вам, яку версію ви використовуєте.
дан

3
@dan Ха-ха, я це теж помітив. Як не дивно, я думаю , що це одна з функцій , доданих у версії 1.4: tmux -V. Якщо ви користуєтесь Ubuntu або системою на основі debian, ви можете проконсультуватися з dpkg -l | grep tmux.
Алан Крістофер Томас

13
Це, здається, найкраща відповідь, на жаль, якщо у вас є лише один розділ, все, що він робить, це забарвлення дільника, і це не змінюється незалежно від того, яка область активна.
фон

3
Зверніть увагу, що це виправлено в більш пізніх версіях. Тепер він забарвлює лише половину дільника залежно від того, на якій панелі ви знаходитесь.
Хроніаль

34

Як відповіли в іншому дописі , тепер у tmux 2.1 можна встановлювати кольори окремих панелей. Вони можуть використовувати:

set -g window-style 'fg=colour247,bg=colour236'
set -g window-active-style 'fg=colour250,bg=black'

у ~/.tmux.confфайлі, щоб показати різницю між активними / неактивними панелями.

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


1
@Solidak Можливо, ви використовуєте кольорову схему Vim - докладнішу інформацію див. В іншому дописі.
декан.

Дивно, що параметри "стиль вікна" та "стиль активного вікна", але це стосується панелей tmux, а не вікон tmux.
Заїд Гарайбех,

13

Налаштуйте status-leftта використовуйте #Pпару символів, яка є номером панелі. Можливо, вам захочеться включити у рядок стану більше, ніж просто номер панелі, але ось приклад рядка, який ви додасте до свого ~/.tmux.confлише для номера панелі:

set-option -g status-left '#P'

Див. Сторінку довідки tmux, щоб отримати більше пар символів: http://manpages.ubuntu.com/manpages/precise/en/man1/tmux.1.html


1
Ах, я щойно зрозумів, що ви збираєтеся виділити фокусовану область, більше, ніж просто індикатор стану. Сподіваємось, це наразі корисно. Вибачте за неправильне прочитання питання.
Алан Крістофер Томас

6

Одне з рішень, яке працює для мене, - це додати область відображення в кінці гарячої клавіші для перемикача панелі. Тут відображаються всі номери панелей, а поточна область має інший колір. Ви також можете використовувати <escape_key> + qдля відображення номерів панелей.

Я використовую alt+h/j/k/lдля перемикання між панелями і використовую наступне прив’язку.

bind -n M-j select-pane -D \; display-pane                                                                                                                                                                                                               
bind -n M-k select-pane -U \; display-pane                                                                                                                                                                                                               
bind -n M-h select-pane -L \; display-pane                                                                                                                                                                                                               
bind -n M-l select-pane -R \; display-pane  

0

Я хотів, щоб межі активної панелі були яскравішими, ніж інші панелі, тому я пішов із цим (працює в tmux 1,8 з CentOS 7):

Фрагмент ~ / .tmux.conf

# rgb hex codes from https://www.rapidtables.com/web/color/RGB_Color.html
set-option -g pane-active-border-fg '#33FF33' # brighter green
set-option -g pane-border-fg '#006600' # darker green

На робочій сторінці tmux сказано, що кольори hex-RGB будуть апроксимовані, і мені здається, що шістнадцяткові коди легше зрозуміти, ніж запам'ятовування "colour47" (поза кольором0-255) - це свого роду світло-зелений (як описано в Як кольорова палітра tmux робота? ).

Витяг з man-сторінки tmux:

message-bg colour
    Set status line message background colour, ...etc...
    or a hexadecimal RGB string such as ‘#ffffff’, which chooses the closest
    match from the default 256-colour set.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.