Definir programaticamente a cor de uma aba no iTerm2?

12

Meu fluxo de trabalho diário inclui-me

  1. Iniciando o iTerm2
  2. Criando 3 guias
  3. Definir uma guia para vermelho, laranja e amarelo
  4. Alterando para um caminho específico em cada guia

Eu gostaria de roteirizar esse processo; shell, applescript, etc. No entanto, não consigo encontrar um gancho que me permita alterar a cor da guia. Isso é possível? Aqui está uma captura de tela com um exemplo do que estou tentando alcançar.

    
por John Kramlich 22.03.2012 / 16:33

3 respostas

13

Isso é possível e você deve ler os códigos de escape do iterm para obter detalhes.

^[]6;1;bg;red;brightness;N^G

Eu tentei configurar a cor do terminal quando eu faço ssh (.ssh / config) e funcionou, mas surpresa, quando eu fechar a sessão ssh, ele não irá chamar o script novamente, a fim de restaurar o título / cor.

Adicionou uma solicitação de recurso às guias coloridas - não esqueça de protagonizar, ou adicione seus comentários (correções também são bem vindas!)

    
por 08.04.2012 / 19:54
8

Eu adicionei essa função ao meu arquivo ~ / .profile:

function color {
    case $1 in
    green)
    echo -e "3]6;1;bg;red;brightness;57\a"
    echo -e "3]6;1;bg;green;brightness;197\a"
    echo -e "3]6;1;bg;blue;brightness;77\a"
    ;;
    red)
    echo -e "3]6;1;bg;red;brightness;270\a"
    echo -e "3]6;1;bg;green;brightness;60\a"
    echo -e "3]6;1;bg;blue;brightness;83\a"
    ;;
    orange)
    echo -e "3]6;1;bg;red;brightness;227\a"
    echo -e "3]6;1;bg;green;brightness;143\a"
    echo -e "3]6;1;bg;blue;brightness;10\a"
    ;;
    esac
 }

Depois de adicionar essa função, você precisa abrir uma nova sessão de terminal. Agora você pode entrar:

$ color green

ou

$ color orange

para alterar a cor do separador.

Eu uso o Photoshop para compor cores:

Essesvaloresdeselecionadordecorespodemserconvertidosnosseguintescomandos(bastainserirosvaloresR->red,G->verde,B->bluenalinhadireitaapós"brilho" para obter uma cor diferente ):

echo -e "3]6;1;bg;red;brightness;57\a"
echo -e "3]6;1;bg;green;brightness;197\a"
echo -e "3]6;1;bg;blue;brightness;77\a"
    
por 08.01.2016 / 10:06
4

Para redefinir a cor da guia após sair da sessão ssh, use:

function ssh {
  command ssh $@
  echo -e "3]6;1;bg;red;brightness;176\a"
  echo -e "3]6;1;bg;green;brightness;181\a"
  echo -e "3]6;1;bg;blue;brightness;175\a"
}
    
por 17.03.2015 / 15:17