Você pode enviar uma seqüência de escape de dentro do tmux para o terminal que contém, transformando sua sequência de escape assim:
- duplique todas as ocorrências de
\e
- prefixar
\ePtmux;
- acrescentar
\e\
Por exemplo, usando st como meu emulador de terminal, posso redefinir a cor # 1 (vermelha) de sua paleta executando
printf '\e]4;1;#aa0000\a'
Para fazer o mesmo a partir do tmux, eu tenho que usar
printf '\ePtmux;\e\e]4;1;#aa0000\a\e\'
Ao usar um script / função shell para alternar cores, verifique a variável de ambiente $TMUX
. Se não estiver vazio, então você está dentro do tmux.