Отсутствие выделения zsh-синтаксиса в tmux

При первом открытии сеанса оболочки я испытываю правильное zsh-syntax-highlighting (см. Здесь ), но как только я вхожу в tmux , подсветка синтаксиса больше не появляется.

Я нашел эту проблему Github, описывающую аналогичную, но, казалось бы, другую проблему, так как пользователь может видеть подсветку синтаксиса в первой панели.

Сначала я установил zsh , затем oh-my-zsh , а затем, наконец, zsh-syntax-highlighting через pacman на Arch и подобрав его в нижней части моего .zshrc (без каких-либо условностей), например:

source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

Я не понимаю, почему именно эта функция не работает в tmux. Все остальные конфигурации / темы / плагины / исходные файлы, похоже, хорошо работают, за исключением этого. Что мне не хватает?

РЕДАКТИРОВАТЬ:

  • Переменная TERM в .zshrc – это export TERM="xterm-256color"
  • Echoing $TERM за пределами tmux дает xterm-256color .

  • Переменная TERM в .tmux.conf set -g default-terminal "screen-256color" .

  • Echoing $TERM внутри tmux также дает xterm-256color .

  • Завершения работы перестали работать после обновления zsh
  • zsh: Что делает команда «время + номер» в zsh
  • Остановить ZSH от попытки исправления команды
  • очистка вывода скрипта, так что он спускается, дает имена пакетов и чисто
  • Изменение оболочки по умолчанию без привилегий chsh или администратора
  • Использование редактора строк zsh для обтекания подпроцессов
  • Выключить и перезапустить контрольный код?
  • Какая магия позволяет мне добавлять удаленные файлы при вводе команды scp?
  • 2 Solutions collect form web for “Отсутствие выделения zsh-синтаксиса в tmux”

    Не устанавливайте TERM в файлах запуска оболочки. TERM определяется терминалом, который вы используете, а не оболочкой.

    Файл запуска оболочки переопределяет TERM установленный tmux .

    Я думаю, что это было после обновления ОС El Capitan, когда это остановилось для меня. У меня это было в моем ~ / .zshrc: alias tmux="TERM=screen-256color-bce tmux" (взято из другого ответа stackexchange). Я изменил его на alias tmux="TERM=screen-256color tmux" и теперь все работает снова.

    Я понимаю, что этот ответ не помогает вам напрямую, но может помочь другим.

    Linux и Unix - лучшая ОС в мире.