Есть ли какие-либо опции для управления цветом фона активных или неактивных панелей в Tmux?
Изменение цвета фона активной или неактивной панели в Tmux
Ответ 1
Похоже, что tmux-2.1 (выпущен 18 октября 2015 г.) теперь позволяет указывать цвета отдельных панелей. Из журнала изменений:
* 'select-pane' now understands '-P' to set window/pane background colours.
например, [из руководства], чтобы изменить передний план панели 1 (текст) на синий, а фон на красный:
select-pane -t:.1 -P 'fg=blue,bg=red'
Для имитации цветовой схемы iTerm:
Чтобы ответить на исходный вопрос, я использую следующие строки в моем ~/.tmux.conf
для установки цветов фона/переднего плана, чтобы имитировать поведение в iTerm:
#set inactive/active window styles
set -g window-style 'fg=colour247,bg=colour236'
set -g window-active-style 'fg=colour250,bg=black'
# set the pane border colors
set -g pane-border-fg colour235
set -g pane-border-bg colour238
set -g pane-active-border-fg colour236
set -g pane-active-border-bg colour250
#or if you a brighter active border, uncomment the following line:
#set -g pane-active-border-bg colour51
Я раньше не видел команд window-style
и window-active-style
, но, возможно, они были доступны в предыдущих версиях tmux.
Кроме того, эти две строки очень полезны для простого разделения панелей:
bind | split-window -h
bind - split-window -v
РЕДАКТИРОВАТЬ: как Jamie Schembri упоминает в комментариях, tmux версии 2.1 (по крайней мере) теперь будет установлен с:
brew install tmux
РЕДАКТИРОВАТЬ (октябрь 2017 г.): теперь brew устанавливает tmux 2.6, и вышеописанное все еще работает.
РЕДАКТИРОВАТЬ панели Vim: Если вы обнаружите, что "неактивная окраска" не работает с панелью Vim, это может быть связано с используемой вами цветовой схемой. Попробуйте по схеме pablo
; то есть в панели Vim:
:colo pablo
Чтобы он работал с вашей собственной пользовательской цветовой ctermbg
Vim, убедитесь, что для параметра " Normal
выделение" не ctermbg
или guibg
. Например, "неактивная окраска" не работает с murphy
, потому что в murphy.vim
есть строка:
hi Normal ctermbg=Black ctermfg=lightgreen guibg=Black guifg=lightgreen
это устанавливает ctermbg
или guibg
к Black
. Однако, изменив эту строку на:
hi Normal ctermfg=lightgreen guifg=lightgreen
заставит "неактивную окраску" работать.
РЕДАКТИРОВАТЬ Июль 2019 Августо предоставил хорошее предложение для изменения цвета фона для номеров строк. В моей vim colourscheme я использую следующее:
hi Normal guifg=#e6e1de ctermfg=none gui=none
hi LineNr guifg=#e6e1de ctermfg=none gui=none
Ответ 2
Невозможно изменить цвет фона на панели, но есть возможность установить цвет рамки (стиль) панели
pane-active-border-style style
Set the pane border style for the currently active
pane. For how to specify style, see the message-command-style option.
Attributes are ignored.
pane-border-style style
Set the pane border style for paneas aside from the
active pane. For how to specify style, see the message-command-style option.
Attributes are
ignored.