O modo shell do Emacs torna $ PS1 diferente

4

Eu tenho uma variável personalizada $ PS1 que se parece com isso na minha linha de comando:

EnoemacsusandoM-xshell,infelizmente,éassim:

Aqui está minha variável $ PS1 export PS1='\[\e]0;\u@\h: \w\a\]\[\e[0;36m\]\T \[\e[1;30m\]\[\e[0;34m\]\u@\H\[\e[1;30m\] \[\e[0;32m\]\[\e[1;37m\]\w\[\e[0;37m\] \$ '

Como posso fazer o modo shell do emacs parecer o mesmo com a minha variável CLI?

    
por Spyros Chiotakis 01.09.2013 / 14:34

2 respostas

5

Deixe a parte set title nos terminais que a suportam:

case $TERM in
  (xterm*) set_title='\[\e]0;\u@\h: \w\a\]';;
  (*) set_title=
esac
PS1=$set_title'\[\e[0;36m\]\T \[\e[1;30m\]\[\e[0;34m\]\u@\H\[\e[1;30m\] \[\e[0;32m\]\[\e[1;37m\]\w\[\e[0;37m\] \$ '
    
por 01.09.2013 / 16:05
1

Você tem alguns comandos no seu PS1 que definem o título da janela do terminal. Estes estão confundindo o shell emacs . Alterar seu PS1 para isso deve funcionar:

export PS1='\[\e[0;36m\]\T \[\e[0;34m\]\u@\H \[\e[1;37m\]\w\[\e[0;37m\] \$ '
    
por 01.09.2013 / 16:02