tmux e screen-256 TERM não suportado em hosts remotos

30

Eu configurei meu tmux para usar screen-256colors e ele funciona muito bem com o vim.

No entanto, quando eu ssh para um host remoto de dentro do tmux, screen-256colors não é reconhecido, então estou recebendo erros como este:

E558: Terminal entry not found in terminfo 'screen-256color' not known. Available builtin terminals are:
    builtin_ansi
    builtin_xterm
    builtin_iris-ansi
    builtin_dumb defaulting to 'ansi'

Além de editar cada controle remoto .bashrc (da mesma forma que esta sugestão ), existe alguma maneira de definir a TERM corretamente e automaticamente no host remoto?

    
por Yoav Aner 02.06.2012 / 22:45

2 respostas

39

Você pode copiar as descrições terminfo necessárias para os hosts remotos.

  1. No sistema local, copie a descrição para o formato de texto:

    infocmp xterm-256color > xterm-256color.ti
    infocmp screen-256color > screen-256color.ti
    
  2. Copie para o host remoto e compile:

    tic xterm-256color.ti
    tic screen-256color.ti
    

As descrições serão armazenadas em ~/.terminfo .

( infocmp e tic são parte dos pacotes ncurses ou ncurses-bin na maioria das distribuições Linux, assim como a maioria dos BSDs que usam ncurses .)

    
por 02.06.2012 / 22:59
7

Eu tenho isso no meu .bashrc:

aliash ssh='TERM=screen ssh'
    
por 11.06.2012 / 12:59