我一直在寻找mac-emacs,我已经M-x install-package
- 咖啡模式。我决定尝试coffee-compile-file
命令,但是当我运行它时,它失败了,抱怨它无法找到coffee
命令。
所以,我在ZSH和Bash上打开终端。 coffee
和node
两者都运行良好。所以,拆分我的emacs屏幕,plink out M-x term
,让bash加载,然后输入coffee
:
bash-3.2$ coffee
bash: coffee: command not found
奇。我为节点和npm做了同样的尝试。
bash-3.2$ node
bash: node: command not found
bash-3.2$ npm
bash: npm: command not found
我的问题是,为什么仅在M-x term
上发生这种情况,我该如何解决呢。
答案 0 :(得分:2)
我在@Etan Reisner和@Akira的帮助下找到了解决方案(谢谢大家!),所以我会在这里发布。在给自己所有的信任之前,我还会等待其他可能想要扩展这个答案的人。
首先,正如人们可能会发现使用which coffee
,coffee
位于/usr/local/bin
。由于某些原因,M-x term
$PATH
不包含该目录,而终端bash则包含该目录。
我们可以将/usr/local/bin
添加到emacs' $PATH
将此行添加到我们的.emacs
:
(setenv "PATH" (concat (getenv "PATH") ":/usr/local/bin"))
现在,当我打开M-x term
并运行咖啡时,它运作正常:
bash-3.2$ coffee
coffee>
但是,我注意到运行M-x coffee-repl
仍然失败,没有这样的文件或目录:coffee' 。这可以通过将其添加到.emacs
:
(setq exec-path (append exec-path '("/usr/local/bin")))
注意,没有解决REPL中难看的颜色转义序列的问题。啊,好吧,那解决了elsewhere。此外,M-x ansi-term
使 更好地使用颜色。