Предпосылки
Сидя вокруг tmux , Vim и соляризации я могу найти много жалуется на 256 цветов и «пользовательский опыт». Ну, у меня противоположная "проблема", то есть Vim хорошо работает с полной темой Solarized только в tmux .
Фон
Я немного настраиваю и настраиваю цветовую схему моего терминала Ubuntu и Guake, и я почти достиг совершенства, которое достигается, когда я использую tmux , что, в свою очередь, означает всегда. Сейчас я пытаюсь понять, почему это происходит.
Здесь внизу есть два терминала, один слева запускает только Vim (показывает текущий .vimrc
), а другой запускает Vim в сеансе tmux . Как вы можете ясно видеть, только в сеансе tmux шрифты выделены жирным шрифтом, что, я думаю, правильно (или нет?).
Вопрос
Почему tmux допускает выделение жирным шрифтом, а терминал, на котором запущен tmux, - нет? Это ошибка или особенность?
echo $TERM
в и изtmux
?screen
тогда как терминал говоритxterm
:)$TERM
это не так актуально.xterm*termName: xterm-256color
свой~/.Xresources
и посмотрите, будет ли это иметь значение ...Ответы:
Короткий ответ
Это ошибка.
Полный ответ
Похоже , что «правильная» визуализация является один слева, где жирным шрифтом являются не оказанной. Для того, что я мог понять ( здесь ссылка), атрибут bold изначально использовался для установки выделенной версии 8 базовых цветов.
По сути, здесь происходит следующее: чтобы использовать полную палитра Solarized с оранжевым , фиолетовым и всеми уровнями серого , цвета называются атрибутом bold , который, в свою очередь, относится к альтернативным 8 цветам ANSI палитра.
Терминал понимает это правильно и показывает оранжевый и комментарий серого цвета при обычном наборе текста, тогда как tmux добавляет к ним ненужный жирный шрифт. В заключение, левая сторона верна, а правая - нет.
вопрос 2
Есть ли способ отключить рендеринг tmux ?
Я все еще должен сделать некоторое исследование об этом, и я обновлю этот ответ, как только я найду что-то.
Ответ 2
И здесь у нас есть решение! :)
Чтобы tmux вел себя правильно, мы должны назвать его, сообщая ему, что мы находимся в среде с 256 цветами.
Для удобства мы могли бы
alias
это (т.е. вы добавляетеalias tmux="<the line above>"
в свой~/.bashrc
).Вызов
tmux
astmux -2
для принудительного запуска tmux с поддержкой 256 цветов (вместо переопределенияTERM
переменной среды) не позволит правильно интерпретировать «жирно-альтернативные» 8 цветов (т. Е. Более яркий вариант также приведет к выделению жирным шрифтом). Поэтому я настоятельно рекомендую использовать решение здесь выше , имеющие как интерпретацию корректных 256 цветов и без смелых «полужирных» альтернативных цветов.источник