MinTTY é o novo console padrão para Cygwin.
O que é um comando shell (algo que eu possa colocar em .bashrc, ou melhor ainda, em .zshrc) para alterar o título da janela MinTTY?
Gostaria que o título da janela fosse o caminho para o diretório atual e que ele fosse atualizado conforme eu alternasse os diretórios dentro do console.
$PS1
) já contém uma sequência de controle que define o título da janela como usuário @ máquina: working_directory.-T <title>
nas propriedades de atalho do Windows. Veja também omintty man page
.Respostas:
O que está errado
O comando a seguir não estava funcionando para mim:
Acontece que minha instalação padrão do Cygwin inclui a seguinte definição de prompt em .bashrc:
Observe que a primeira parte do prompt (
\e]0;\w\a
) está definindo o título do Windows toda vez que o prompt aparece.A solução
Adicione estas linhas ao seu
.bashrc
que definem 2 funções:Em seguida, você pode definir um título personalizado com este comando:
ou você pode reverter para o padrão do cygwin (o caminho atual) com este comando:
Espero que isto ajude
fonte
source ~/.bashrc
- caso contrário, o cygwin ainda estará executando a versão antiga do bashrc que estava no disco quando o cygwin foi iniciado. - testado emCygwin version 2.8.1 (64 bit)
- uma versão de 2017Você pode alterá-lo com a sequência de controle xterm para isso, da seguinte maneira:
Consulte: http://code.google.com/p/mintty/issues/detail?id=241
fonte
Coloque isso em .zshrc:
A sequência de caracteres especiais no estabelecimento de funções faz com que o MinTTY altere o título da janela.
No zsh , se você definir uma função com o nome especial chpwd, ela será invocada após cada chdir .
Funciona no WinXP, com Cygwin 1.7 e MinTTY executando o zsh.
fonte
settitle "$(pwd)@$HOST"
No bash, a variável PROMPT_COMMAND pode ser configurada para conter vários comandos, separados por ponto e vírgula. você pode usá-lo para fazer a mesma configuração de título descrita na outra resposta que fala sobre zsh.
fonte
fonte
Eu usei a resposta de Leonel, mas achei que o título só piscaria ao fazer isso, o que significa que pelo menos o comando echo funciona como pretendido. Executei o zsh interativamente com o modo de depuração ativado usando
Alterar o diretório evidentemente chama outra função chamada
title()
afterprecmd()
echpwd()
, efetivamente substituindo-as. Então eu liguei isso no meu .zshrc e funcionou.Se você preferir usar
chpwd()
ouprecmd()
em vez disso, simplesmente desabilitar a função de título:title(){}
.fonte
Só queria compartilhar minha solução para isso, pois uso o mintty para executar um script.
Meu atalho mintty está configurado como:
O script connect.sh que escrevi, chamado no atalho acima, solicitará o servidor ao qual quero me conectar E execute a função de configuração definida no script.
connect.sh
fonte
title
se não a utiliza?tente adicionar isso ao .bash_profile
export PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}:${PWD/#$HOME/~}\007"'
Funciona para mim.
fonte