Como posso usar a saída de cores em um comando run-shell do tmux?

1

Eu limitei uma chave para executar um script com o comando run-shell do tmux, mas não consigo encontrar nenhuma maneira de usar a saída de cores.

  • os ansi normais não funcionam, por exemplo, echo -e "\e[32mblah blah\e[0m"
  • A formatação do
  • tmux não funciona (nem eu esperava), por exemplo, echo -e "#[fg=colour250]blah blah"
  • e nada mais que eu tentei, como códigos de 256 cores, por exemplo, printf "\x1b[38;5;57mblah blah"
por iconoclast 15.11.2015 / 05:34

1 resposta

1

Não há solução alternativa para run-shell , porque tmux copia os dados do trabalho em screen_write_vnputs , descartando quaisquer caracteres de escape (assim como a maioria dos outros caracteres de controle). Aqui está o pedaço relevante de código:

        if (*ptr == '
        if (*ptr == '%pre%1')
            gc.attr ^= GRID_ATTR_CHARSET;
        else if (*ptr > 0x1f && *ptr < 0x7f) {
            size++;
            screen_write_putc(ctx, &gc, *ptr);
        }
        ptr++;
1') gc.attr ^= GRID_ATTR_CHARSET; else if (*ptr > 0x1f && *ptr < 0x7f) { size++; screen_write_putc(ctx, &gc, *ptr); } ptr++;
    
por 14.10.2016 / 02:33

Tags