我正在从便携式驱动器(USB 记忆棒)成功运行 Emacs,但是当我尝试使用 diff 函数时遇到了麻烦。我已经安装了 cygwin,当我将 diff.exe 的路径添加到 Windows 中的环境变量 PATH 时,它可以与 Emacs 一起使用。问题是,使用这种方法,我必须在我想使用的每台计算机上编辑环境变量。不好。
然后我尝试将它从我的 site-start.el 中添加到路径变量中。当我从 Emacs 中检查变量时添加了路径,但 Emacs 仍然找不到 diff 工具。
有谁知道如何解决这个问题?
提前致谢
——马丁
编辑: 我的 site-lisp.el 现在看起来像这样,到目前为止没有任何效果(除了手动将路径添加到 PATH 环境变量中):
;
; Get drive letter
;
(defvar usb-drive-letter (substring data-directory 0 2))
;
; Add cygwin-folder to path and exec-path
;
(defvar cygwin-folder (concat usb-drive-letter "/PortableApps/CygwinPortable/App/Cygwin/bin/"))
(setenv "PATH" (concat (getenv "PATH") ";" cygwin-folder))
(setq exec-path (append exec-path cygwin-folder))
我的文件夹如下:
[root of usb stick]
\PortableApps\Emacs\bin (including runemacs.exe)
\PortableApps\CygwinPortable\App\Cygwin\bin (including diff.exe)