Não é possível ativar o suporte a TrueColor no tmux através da substituição do terminfo

6

dist: Arch Linux.

Eu tenho um st build do AUR e tmux do repositório oficial. Em st eu encontro um bom suporte TrueColor que funciona com a última versão do Vim via opção termguicolors. Mas quando eu tentei trazer isso para o tmux enfrentei alguns problemas.

Na primeira vez, a saída de

tmux info | grep Tc

de dentro do tmux era

197: Tc: [missing]

depois de ler a man page do tmux descobri que essa opção deve trazer para o tmux Tc

set-option -g terminal-overrides "st-256color:Tc"

onde do meu emulador de terminal ele me retorna:

TERM=st-256color 

Mas o resultado da informação do tmux ainda era o mesmo. Só para verificar eu instalei xterm e tentei a mesma manipulação com ele, mas não me deu outro resultado. Afinal, o tmux reconhece que o terminal suporta 256 cores e emula cores verdadeiras através dele

    
por Anton Rybakov 30.10.2016 / 19:01

2 respostas

4

Você pode modificar sua cópia da descrição do terminal para fornecer este sinalizador:

infocmp -x >foo
edit foo, adding "Tc," after the end of any line ending with a comma
tic -x foo

Isso funcionaria para ncurses (que é o que você tem com qualquer distribuição Linux), e talvez curses do NetBSD.

    
por 30.10.2016 / 19:20
0

Você precisa adicionar -a para anexar, em vez de substituir os recursos existentes do terminal:

set-option -ga terminal-overrides ",*256*:Tc"

Isso funcionará para qualquer terminal que anunciar 256 cores.

Verifique se você também não tem outro set -g terminal-overrides em algum lugar no seu arquivo de configuração.

Para vim , provavelmente você também desejará:

set -g default-terminal "screen-256color"
    
por 11.11.2017 / 12:58

Tags