Линия перенос не работает в tmux

1466
niko

Я использую konsole-4.14.3, tmux-2.6и моя оболочка bash. За пределами tmux перенос строк отлично работает, и текст перемещается на следующую строку. В tmux это не работает. Я долго гуглил, но не нашел никаких исправлений. По моему ~/.bashrcу меня

export PS1="\[\e[1;92m\]\u@\h: \w \\$ \[\e[m\]" export PS2='> ' 

Я удалил их и попробовал еще раз, но результат был тот же. Я нахожусь на Slackware 14.2, и кажется, что проблема связана с некоторыми настройками системы, потому что при том же самом ~/.tmux.confпереносе строк работает, как и ожидалось, в Ubuntu 16.04.

0

1 ответ на вопрос

1
niko

РЕДАКТИРОВАТЬ: нашел проблему. Похоже, это происходит в bash 4.3, возможно, и в более старых версиях. Значение по умолчанию TERMдля моей ОС (снаружи tmux) было xterm. Как только TERMустановлено значение screenили screen-256color, перенос строк перестает работать. Так как tmuxнеобходимо, чтобы TERMустановлен в screenили screen-256color, перенос строк не будет работать. Проблема была исправлена ​​после обновления до bash 4.4.

Для записи отметим, что в _inside_ `tmux` и` screen` ожидаемое значение `TERM` связано с` screen` (например, `screen-256color`), тогда как _outside_ для` tmux` и `screen` должно быть все, что эмулятор терминала устанавливает для вас по умолчанию (часто это `xterm` или` xterm-256color`). Не ожидайте, что одно и то же значение (каким бы оно ни было) будет работать как снаружи, так и внутри tmux. egmont 6 лет назад 1

Похожие вопросы