6
votes

I want to run Node.js in eshell, but the prompt does not right:

enter image description here

So, how can I fix this?

2
Those look like terminal control codes. Maybe try running in an `ansi-term' instead? - user725091
Use bash/zsh in emacs and run node is ok. But I want to try node repl in eshell. - unionx

2 Answers

8
votes

An alternative is to add this to your .emacs:

(setenv "NODE_NO_READLINE" "1")

The benefit of this approach is that it will also work for other invocations of Node programs that you run directly.

7
votes

Try running node in eshell with NODE_NO_READLINE enabled. For example, you could add an alias to eshell by running this command in eshell:

alias node 'NODE_NO_READLINE=1 node'