5
好吧,标题有这一切。我曾使用(setenv "PATH" "whatever:$PATH" t)
能够从Emacs中调用事件(事实上,来自AUCTeX的一件事 - ConTeXt)。刚才我了解了exec-path
。我应该用它来代替吗?GNU Emacs中PATH(由setenv设置)和exec-path之间的区别究竟是什么?
好吧,标题有这一切。我曾使用(setenv "PATH" "whatever:$PATH" t)
能够从Emacs中调用事件(事实上,来自AUCTeX的一件事 - ConTeXt)。刚才我了解了exec-path
。我应该用它来代替吗?GNU Emacs中PATH(由setenv设置)和exec-path之间的区别究竟是什么?
虽然setenv
实际上是设置环境(和影响(从什么emacs的这个执行的程序修改)将看到的环境),exec-path
告诉Emacs的地方寻找可执行程序,但是程序从这个emacs的运行将不会看到他们的PATH
改变。
使用setenv
更改环境不会更改当前Emacs搜索可执行文件的方式,因为它使用exec-path
。为了达到和使得Emacs执行的子进程变为$PATH
,必须同时设置exec-path
和$PATH
。