Назад | Перейти на главную страницу

Как исправить сеанс tmux, испорченный управляющими символами

Время от времени я случайно добавляю управляющие коды в свой сеанс терминала (либо ошибочное кодирование, либо случайно gpg --export). Иногда это приводит к тому, что мой сеанс tmux теряет форматирование и печатает управляющие символы в границах окон tmux. После этого все окна tmux сильно запутались. Даже простая фокусировка одного окна приводит к беспорядку в других окнах. Традиционные приемы сброса терминала (reset, echo [CTRL]+V [CTRL]+C) не исправляйте это, поэтому я выхожу из всех активных сессий и перезапускаю tmux.

Кто-нибудь знает способ сбросить / обновить все панели tmux без завершения tmux?

Ctrl+B затем р должен это сделать. Это заставляет tmux перерисовывать весь экран с нуля.

Существует подробное объяснение того, как сбросить многие части tmux при обмене стеками: https://unix.stackexchange.com/questions/49886/tmux-status-bar-corrupted-after-catting-a-binary-file-how-to-reset

Для меня часто только tmux rename-window myWindowName и printf '\033]2;%s\007' "$(uname -n) (установить статус право) обязательны.

ctrl-b r - неправильный ответ. Правильный ответ:

  1. ctrl-b shift-D получить список прикрепленных сессий
  2. выберите сеанс, который вы использовали, когда испортили экран, и нажмите Enter, чтобы отсоединить его (или переберите этот список и отключитесь от всех сеансов, если хотите)
  3. если отсоединен от всех сеансов в # 2, то tmux attach -t снова, чтобы прикрепить новый сеанс. Это избавит от проблемного сеанса, не прерывая tmux.

3 варианта ...

  1. stty sane
  2. reset
  3. echo ^v^o (это E