使用-l参数加载时获取当前emacs脚本文件的路径
在加载并使用使用-l参数加载时获取当前emacs脚本文件的路径,emacs,elisp,Emacs,Elisp,在加载并使用emacs-l path/to/script/foo.el运行的lisp文件中,我可以获取运行文件的路径吗 例如,是否有某种方法可以确定foo.el中的path/to/script是什么 我对lisp不是很有经验,所以请温和地对待您的解决方案 Emacs 22.3.1在Windows 7上变量加载文件名在加载文件时绑定到文件名。要获取目录,只需使用文件名目录,如下所示: (file-name-directory load-file-name) 可能与@Trey Jackson重复,
emacs-l path/to/script/foo.el运行的lisp文件中,我可以获取运行文件的路径吗
例如,是否有某种方法可以确定foo.el
中的path/to/script
是什么
我对lisp不是很有经验,所以请温和地对待您的解决方案
Emacs 22.3.1在Windows 7上变量加载文件名
在加载文件时绑定到文件名。要获取目录,只需使用文件名目录
,如下所示:
(file-name-directory load-file-name)
可能与@Trey Jackson重复,我同意它很接近,但我需要更多的时间来跟踪文件名目录函数。@JesseVogt不太完美eval
在require
d包文件中对其进行求值:调试器已输入--Lisp错误:(错误的类型参数stringp nil)文件名目录(nil)
@yPhil调用文件名目录
时需要传入一个字符串,显然是用nil
调用它的。该变量仅在调用load
-这是问题的上下文时设置。