ti-enxame.com

Obtendo 256 cores para trabalhar no tmux

Tenho 256 cores funcionando muito bem em konsole,. Eu pensei em tentar tmux porque, diferentemente da tela, parece suportar o modo vi. No entanto, acho que as cores do meu prompt são exibidas e isso é mais provável porque eu tenho um prompt de 256 cores. O que preciso fazer para que tmux reconheça todas as 256 cores?

186
xenoterracide

O FAQ do Tmux desaconselha explicitamente a definição de TERM para algo diferente de screen ou screen-256color no seu arquivo init do Shell, portanto, não faça isso!

Aqui está o que eu uso:

~$ which tmux
tmux: aliased to TERM=xterm-256color tmux

e no meu .tmux.conf:

set -g default-terminal "screen-256color"

Aliasing tmux para "tmux -2 "também deve fazer o truque.

271
cannedprimates

Tente definir 256 cores explicitamente no seu bashrc ou zshrc:

export TERM=xterm-256color

ou

export TERM=screen-256color

Se você tiver problemas com o tmux não limpando as cores de plano de fundo corretamente ao usar a configuração de termos da tela, tente:

export TERM=screen-256color-bce
42
redacted

Conforme tmux FAQ , adicione isso ao seu ~/.tmux.conf:

set -g default-terminal "screen-256color"

Em seguida, adicione este alias para tmux:

alias tmux='tmux -2'

Não é necessário substituir a variável TERM no seu perfil ou ao iniciar tmux.

Mais informações: http://vim.wikia.com/wiki/256_colors_setup_for_console_Vim

20
user1338062

A versão mais recente do ncurses é fornecida com uma entrada terminfo tmux-256color (a FAQ = menciona isso). Como um exemplo, um benefício de usar tmux-256color sobre screen-256color é que o itálico é renderizado corretamente (a tela não suporta itálico).

Portanto, se você tiver o pacote ncurses mais recente, o seguinte também funcionará:

set -g default-terminal "tmux-256color"
13
Gabriel Parent

Para pessoas que possuem o tmux mais recente, o .tmux.conf opção da resposta aceita deve funcionar.

Eu só quero acrescentar que você provavelmente precisará reiniciar o tmux para que a nova configuração entre em vigor:

tmux kill-server && tmux

Curiosamente, isso não é mencionado em nenhum lugar nas respostas e demorei um pouco para descobrir.

4
mast3r

Nota realmente importante aqui se você estiver executando um Ubuntu mais antigo que o Bionic (18.04). Se você estiver executando tmux 2.1 ou mais velho, e você provavelmente é, basicamente nenhum conselho que você lê online sobre o tmux funcionará .. para qualquer coisa.

tmux -V é um teste fácil para isso. Se você ver 2.1 ou mais antigo, você pode construir o tmux a partir da fonte ou adicionar um repositório não oficial. Atualizei meu tmux com:

Sudo add-apt-repository ppa:/hnakamur/tmux
Sudo apt update
Sudo apt upgrade

Pessoalmente, após a atualização para 2.6, 1) minhas chaves estão funcionando melhor, 2) conselhos on-line realmente funcionam, 3) minhas cores não são loucas. Grande melhoria.

(Aqui está um link para a página do repositório, btw): https://launchpad.net/~hnakamur

3
zzxyz

Não pude explicar por que isso funciona, mas resolveu o problema para mim.

~/.tmux.conf

set-option -g default-command bash
2
John Snow

Esta é a minha solução .... Eu edito meu arquivo .bashrc e adiciono este

if [ "$TERM" != "xterm-256color" ]; then
      export TERM=xterm-256color
    fi

Espero que funcione na sua

1
Wira Bhakti

Sentindo-me grato por todas as outras respostas aqui, dando-me dicas, mas parece desnecessário modificar a configuração global do TERM AND ~/.tmux.conf.

Acabei usando um alias para definir o TERM somente quando estou prestes a usar o tmux. Basta adicionar esta frase no final do seu ~/.bashrc (ou qualquer arquivo de configuração do Shell que você usa).

alias tmux='TERM=xterm-256color tmux'

É isso aí. Curiosamente, após o lançamento do tmux, o TERM será redefinido automaticamente para "screen", mas as cores funcionam de qualquer maneira. Então eu acho que o tmux também ficaria feliz (por não mexer no seu ambiente TERM?).

0
RayLuo

As seguintes linhas em ~/.tmux.conf trabalhou para mim -

set -g default-terminal "xterm-256color"
set-option -ga terminal-overrides ",xterm-256color:Tc"

Testado em

  • Tmux 2.7, Ubuntu 16.04,18.04
  • Tmux 2.9, CentOS
0
user3496912