Je fais de la programmation sur la machine d'un collègue. Il a une version d'emacs (23.1.1) que je n'ai jamais utilisée auparavant. Mon problème est que lorsque je passe en mode shell, mon invite bash ressemble à ceci:
^[]0;jay@socrates:~^G[jay@socrates]$
Je me suis PS1
mis à '[\u@\h]\$ '
mon .bashrc
. Il est censé ressembler à ceci:
[jay@socrates]$
Voici à quoi cela ressemble dans un shell régulier. J'ai également vérifié que PS1 est réglé sur la valeur correcte dans le shell emacs, donc maintenant je n'ai plus d'idées. Comment puis-je obtenir mon invite pour ressembler à ce que je veux?
J'ai vu quelques suggestions à utiliser term
ou à la eshell
place de shell
. term
a le même problème d'invite que ci-dessus, et eshell
ignore complètement mon PS1
donc ça n'aide pas vraiment.
J'ai rencontré exactement le même problème et cela est dû à PROMPT_COMMAND. J'aime le titre xterm. J'ai donc ajouté la ligne suivante dans ~ / .emacs_bash
la source
Cela peut être lié au type de terminal du shell emacs par rapport à votre shell normal. Vérifiez à quoi la
TERM
variable d'environnement est définie dans les deux shells. S'ils sont différents, vous devriez pouvoir modifier le type de terminal du shell emacs ou utiliser une définition PS1 différente pour le type de terminal emacs dans.bashrc
.Vous pouvez également essayer
M-x ansi-term
(etansi-color-for-comint-mode-on
si vous avez des invites de couleur).la source
Cela a été très bien répondu sur le site stackoverflow. par Daniel Poe.
Voici sa réponse.
Vous pouvez utiliser AnsiTerm qui prend en charge les couleurs ou vous pouvez activer AnsiColor pour le shell normal:
la source