1

У меня есть проблема, которую я не могу понять и не могу отладить для меня.

  • Я использую Mac OS X 10.9.2 (последняя версия) и использую Terminal.app и zsh в качестве оболочки.
  • Сервер, на котором я работаю удаленно, использует Ubuntu 13.04 и zsh в качестве оболочки.
  • Моя переменная среды $ TERM в OS X имеет xterm256-color , и то же самое видно после входа на удаленный сервер.
  • Локально моя подсказка - [[ ${EUID} != 0 ]] && PS1=$'%{\e[1;32m%}%n@dhm %{\e[1;36m%}%1d %#%{\e[0m%} ' . Я думаю, что цветовые коды экранированы правильно.
  • По моему .vimrc:
    • set nocompatible " default options
    • set term=ansi " colors on
    • syntax on " syntax highlighting
    • ...
  • В данный момент я решаю проблему, и мой удаленный файл .zshrc пуст: # Created by newuser for 5.0.0 единственная строка в файле.

Вот моя проблема:

  • Когда я обычно использую vim на моем Mac, он работает нормально.
  • Когда я ssh на сервер Ubuntu, vim и zsh и т.д. Работают нормально.
  • После того, как я выхожу с удаленного сервера, vim делает то, где клавиши со стрелками помещают B\n A\n , C\n , D\n что обычно фиксируется, например, путем установки nocompatible или установки вашего терминала в ansi , в соответствии с другие темы.
  • После локального reset терминала vim работает нормально.

Еще один момент данных: это не происходит, когда я устанавливаю удаленную оболочку на bash . Хотя мой удаленный .zshrc пуст.

Любой совет, как я могу отладить это? Я пробовал что-то вроде сравнения env и echo $PS1 до и после ssh , но не нашел никаких изменений.

Изменить: я опубликовал gist вывода процесса входа в систему через script здесь: https://gist.github.com/dhalperi/d00f191801c000ff0770

0