Precisa redefinir o terminal OS X APÓS efetuar logout do Ubuntu (ssh + zsh)

1

Eu tenho um problema que não consigo entender e não posso depurar pela minha vida.

  • Eu corro o Mac OS X 10.9.2 (mais recente) e uso Terminal.app e zsh como meu shell.
  • Um servidor em que trabalho remotamente executa o Ubuntu 13.04 e o zsh como meu shell.
  • Minha variável de ambiente $ TERM no OS X está definida como xterm256-color , e a mesma mostra depois de efetuar login no servidor remoto.
  • Localmente, meu prompt é [[ ${EUID} != 0 ]] && PS1=$'%{\e[1;32m%}%n@dhm %{\e[1;36m%}%1d %#%{\e[0m%} ' . Acho que os códigos de cor escaparam corretamente.
  • no meu .vimrc :
    • set nocompatible " default options
    • set term=ansi " colors on
    • syntax on " syntax highlighting
    • ...
  • No momento, estou fazendo uma triagem do problema e meu controle remoto .zshrc está vazio: # Created by newuser for 5.0.0 é a única linha no arquivo.

Aqui está o meu problema:

  • Quando uso vim normalmente no meu Mac, tudo funciona bem.
  • Quando eu ssh no servidor Ubuntu, vim e zsh e etc. funcionam bem.
  • Depois de sair do servidor remoto, vim faz o que as teclas de seta colocam B\n A\n , C\n , D\n que geralmente é corrigido, por exemplo, definindo nocompatible ou definindo seu terminal para ansi , de acordo com outros tópicos.
  • Depois de um terminal reset localmente, vim funciona bem.

Outro ponto de dados: isso não acontece quando eu configuro meu shell remoto para bash . Mesmo que meu controle remoto .zshrc esteja vazio.

Algum conselho sobre como posso depurar isso? Eu tentei coisas como comparar env e echo $PS1 antes e depois de ssh , mas não encontrei nenhuma alteração.

Editar: publiquei gist da saída do processo de login em script aqui: link

    
por Dan Halperin 12.05.2014 / 19:11

0 respostas