这个问题Node.js prompt '>' can not show in eshell解决了 node repl 的问题,但是当您从 npm 调用 node 时,该解决方案不起作用。
例如,如果我做
$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sane defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
^[[1G^[[0Jname: (nodo1) ^[[15G
或者如果你有一个带有 "scripts" 的 package.json : { "start" : "node" }
$ npm start
npm WARN package.json nodo1@0.0.1 No README.md file found!
> node
^[[1G^[[0J> ^[[3G
我知道可以使用“start”解决这个问题:“env NODE_NO_READLINE=1 node”,但是在任何地方都写这个不是找到解决方案。也许该软件包的其他用户不使用 emacs 并且需要以其他方式设置 env var。
我尝试使用 npm 设置 NODE_NO_READLINE=1 的别名,但结果相同
alias npm='env NODE_NO_READLINE=1 npm'