我的.emacs包含
(setenv "PATH" (concat ".:/usr/texbin:/opt/local/bin" (getenv "PATH")))
(setq exec-path (append exec-path '(".:/usr/texbin:/opt/local/bin")))
(add-to-list 'load-path "/usr/local/share/emacs/site-lisp")
(require 'tex-site)
(load "auctex.el" nil t t)
(load "preview-latex.el" nil t t)
Run Code Online (Sandbox Code Playgroud)
/ usr/texbin是latex/pdflatex/..所在的位置./ opt/local/bin /是可以找到gs的地方.
然而,当我运行预览时,显然需要乳胶和gs,我得到了
Preview-DviPS finished at Thu Dec 22 11:25:46
DviPS sentinel: Searching for program: No such file or directory, gs
Run Code Online (Sandbox Code Playgroud)
这意味着可以找到乳胶,但不是gs.
我不确定是否需要设置exec-path,也许PATH就足够了,但我已将其设置为调试措施.
为什么emacs找不到gs,即使它所在的目录是在PATH和exec-path中?
我试图通过Emacs的编译模式编译u-boot,看起来Emacs不知道如何找到bash环境变量.即使我设置了它们,并且可以通过Emacs shell仿真进行编译,编译模式仍然会尝试编译,就好像它们不存在一样.
我需要做些什么来使其更具环保意识?
我正在尝试在我的Mac OS X系统上使用特定的ruby版本运行编译命令(rake cucumber),我使用rvm在终端中执行此操作.我的〜/ .MacOSX/environment.plist中有正确的路径,但emacs的坚持前面加上这条道路,并因此使其失去作用.我也尝试过:
(when (equal system-type 'darwin)
(setenv "PATH" (concat "/Users/fearoffish/.rvm/bin:/Users/fearoffish/.rvm/rubies/ruby-1.8.7-p249/bin:/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249/bin:/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249%global/bin:/Users/fearoffish/.rvm/bin"))
(push "/Users/fearoffish/.rvm/bin" exec-path)
(push "/Users/fearoffish/.rvm/rubies/ruby-1.8.7-p249/bin" exec-path)
(push "/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249/bin" exec-path)
(push "/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249%global/bin" exec-path)
(push "/Users/fearoffish/.rvm/bin" exec-path))
Run Code Online (Sandbox Code Playgroud)
这是emacs初学者绝望的尝试,以获得我想要的东西.它仍然在它前面,所以我的道路最终成为:
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/fearoffish/.rvm/bin:/Users/fearoffish/.rvm/rubies/ruby-1.8.7-p249/bin:/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249/bin:/Users/fearoffish/.rvm/gems/ruby-1.8.7-p249%global/bin
Run Code Online (Sandbox Code Playgroud)
我不希望/ usr/bin和其他人在前面,我希望我的路径首先和emacs前置路径到底,我认为这将解决我的问题.
我通过简单地打开Aquamacs并运行meta-x compile然后测试它echo $PATH.
有任何想法吗?
有没有办法运行一个shell命令,让输出显示在一个新的缓冲区中,并让该输出逐步显示?Eshell和其他emacs终端模拟器找到了这个工作,但我认为没有办法编写脚本.
我想做的是编写一些小的elisp函数来执行运行单元测试等操作,并将输出细节写入缓冲区.
elisp函数shell命令接近我想要的但它在进程完成时立即显示所有输出.