В чем разница между screen-256 color и xterm-256color

26

Я только начал использовать tmux, и у меня возникли проблемы с моей схемой цветов vim. Я использую цветовую схему zenburn , и она прекрасно работает с настройками терминала по умолчанию в Ubuntu 10.04.

Тем не менее, когда я запускаю vimtmux-сессию, цвета выглядят не очень хорошо. Я провел несколько поисков, чтобы попытаться выяснить, в чем проблема, и одна вещь, которую я нашел, это вопрос, где решение включало в себя использование tmux screen-256colorи удаление настройки, в .bashrcкоторой он был установлен xterm-256color.

Так что мне интересно , в чем разница между xterm-256colorи , screen-256colorно я не нашел хорошее объяснение еще.

Габриэль Южный
источник
5
Не устанавливайте $TERMв .bashrc; это просто напрашивается на такую ​​проблему.
geekosaur

Ответы:

14

tmuxявляется эмулятором терминала, поскольку каждая панель должна вести себя как отдельный терминал; его эмуляция не совсем совпадает с эмуляцией xtermили gnome-terminal, по историческим причинам (вместо этого она совпадает screen, что предшествует большинству эмуляторов терминала GUI). Поэтому для правильного поведения требуется другое описание терминала.

Настройка $TERMвручную обычно является плохой идеей именно по этой причине; обычно он устанавливается правильно, за некоторыми исключениями, обычно связанными с совместимостью (например, более старый Solaris не понимает xterm-256color).

geekosaur
источник
Хорошо, у меня была именно эта проблема: unix.stackexchange.com/questions/167843/… . Так, где я должен поместить $ TERM тогда в screen-256color?
Томас Браун
3
в вашем .tmux.conf: установите -g терминал по умолчанию "screen-256color"
Уэйн Уокер