tmux y screen-256 TERM no son compatibles con hosts remotos

32

He configurado mi tmux para usar screen-256colorsy funciona muy bien con vim.

Sin embargo, cuando ssh a un host remoto desde tmux, screen-256colorsno se reconoce, por lo que obtengo errores 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'

Además de editar cada control remoto .bashrc(de manera similar a esta sugerencia ), ¿hay alguna forma de configurarlo de forma TERMcorrecta y automática en el host remoto?

Yoav Aner
fuente

Respuestas:

41

Puede copiar las descripciones de terminfo necesarias en hosts remotos.

  1. En el sistema local, volcar la descripción al formato de texto:

    infocmp xterm-256color > xterm-256color.ti
    infocmp screen-256color > screen-256color.ti
    
  2. Copie al host remoto y compile:

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

Las descripciones se almacenarán en ~/.terminfo.

( infocmpy ticson parte de los paquetes ncurses o ncurses-bin en la mayoría de las distribuciones de Linux, así como en la mayoría de los BSD que usan ncurses ).

Gravedad
fuente
Gracias por la respuesta rápida y ordenada! Ojalá pudiera hacer +2 con este
Yoav Aner
De acuerdo. Funcionó como encanto!
Yordan Georgiev
7

Tengo esto en mi .bashrc:

alias ssh='TERM=screen ssh'
Ovidiu C.
fuente