2015-08-03 3 views
2

я удалил и добавил несколько раз теперь следующая строка ~/.tmux.conf:Unicode ошибки символов при выходе tmux с попеременным экраном переопределен

set -ga terminal-overrides ',xterm*:[email protected]:[email protected]' 

Который по лицу, предоставившего его делает следующее:

, чтобы обмануть мультиплексоры, думая, что терминал не имеет режима «альтернативного экрана» (например, используемого пико, mutt и т. Д.). Это достигается установкой команд termcap для сеанса.

Часть команды «xterm *» должна быть установлена ​​в соответствии с типом эмулятора терминала.

Конечным результатом является то, что переполнение заканчивается в буфере прокрутки терминала, а не исчезает. Конечно, поскольку это один статический буфер, все становится беспорядочным, когда вы переключаетесь между окнами экрана или tmux, но это удобно для быстрого перехода к просмотру вывода команды ls или тому подобного.

Я не совсем понимаю смелый раздел (выделено курсивом), но думаю, что это источник того, что я вижу. Это вызывает некоторый странный вид unicode overpill при выходе из tmux.

enter image description here

Pasted как открытый текст этот текст не будет отображаться, но символ [001B]112 появляется рядом с обычным [exited]:

]112[exited] 

(FWIW Я думаю, что он вставил в эту линию, но ISN 't показ)

Я следовал за this adviceИспользуйте прокручиваемую панель терминала с tmux»), и хотя это действительно работает, это jus t уродливый/раздражающий, чтобы увидеть, что после выхода. Может ли кто-нибудь посоветовать, как исправить или избежать выходного сообщения?

ответ

1

Оффлайн, я получил бы нежелательное «сообщение» - это какое-то жестко запрограммированное приложение (или скрипт), которое помогает сбросить цвет динамического текстового курсора xterm . См XTerm Control Sequences в описании Operating System Controls:

 The dynamic colors can also be reset to their default 
     (resource) values: 
... 
     Ps = 1 1 2 -> Reset text cursor color. 

Так ... где-то есть какой-то сценарий делает эквивалент

echo -n -e '\e]112\a 

результаты, вероятно, зависит от того, что наиболее частности эмулятор терминала вы используете. Оба экрана и tmux фильтруют escape-последовательности, которые их разработчики не хотели реализовывать, и пропускают те, которые терминал должен «обрабатывать».

2

Просто взгляните на предложения вы предоставили: « 'Xterm * часть команды должен быть установлен на любой ваш терминал эмулятор объявлен как»

В моем случае, $ TERM имеет значение xterm-256color, а соответствующая строка в ~/.tmux.conf выглядит так:

set -g terminal-overrides "xterm-color256:[email protected]:[email protected]"