Estou fazendo alguma programação na máquina de um colega. Ele tem uma versão do emacs (23.1.1) que eu não usei antes. Meu problema é que, quando vou para o modo shell, meu prompt do bash fica assim:
^[]0;jay@socrates:~^G[jay@socrates]$
Tenho PS1
definido para '[\u@\h]\$ '
na minha .bashrc
. Ele deveria ficar assim:
[jay@socrates]$
É assim que fica em um shell comum. Também verifiquei se o PS1 está definido com o valor correto no shell emacs, então agora estou sem ideias. Como faço para que meu prompt tenha a aparência desejada?
Eu já vi algumas sugestões para usar term
ou em eshell
vez de shell
. term
tem o mesmo problema imediato que o descrito acima e eshell
ignora completamente o meu PS1
para que isso realmente não ajude.
Me deparei exatamente com o mesmo problema e é devido a PROMPT_COMMAND. Eu gosto do título xterm. Então eu adicionei a seguinte linha em ~ / .emacs_bash
fonte
Pode ser algo a ver com o tipo de terminal do shell emacs versus o seu shell comum. Verifique como a
TERM
variável de ambiente está configurada nos dois shells. Se eles forem diferentes, você poderá alterar o tipo de terminal do shell emacs ou usar uma definição PS1 diferente para o tipo de terminal do emacs.bashrc
.Você também pode tentar
M-x ansi-term
(eansi-color-for-comint-mode-on
se tiver instruções em cores).fonte
Isso foi respondido muito bem no site stackoverflow. de Daniel Poe.
Aqui está a resposta dele.
Você pode usar o AnsiTerm que suporta cores ou ativar o AnsiColor para o shell normal:
fonte