在Emacs中,我在菜单上添加一个项目来加载init.el文件,因为我几乎每天都在那里。 菜单代码工作正常,但文件没有加载。 所以在缓冲区中,为了排除故障,我输入:
(load user-init-file)
并使用C-x C-e
执行它。
如果失败则结果是因为它在路径中需要双反斜杠。
user-init-file解析为"c:\steve\emacs\init.el"
但应该是`
"c:\\steve\\emacs\\init.el"
是否有一个函数已经转换为双反斜杠? 或者我如何通过搜索/替换来做到这一点?
这与我发现的其他搜索问题类似,不过这是用于替换字符串而不是缓冲区。
答案 0 :(得分:2)
我想你可能只想要(load-file user-init-file)
。 load-file
不使用load-path
,并且不会尝试追加.elc
或.el
。
(如果您使用MS Windows表示法作为文件名,那么您可以通过调用file-truename
来查看Emacs真正认为文件名是什么。)
如果您确实想使用load
,请尝试(load user-init-file nil nil t)
。
load
尝试展开其FILE
arg,自动添加.elc
和.el
。第四个参数是NOSUFFIX
,如果非零则阻止该行为。
C-h f load
:
**
load-** is a built-in function in
C源代码`。
(load FILE &optional NOERROR NOMESSAGE NOSUFFIX MUST-SUFFIX)
执行名为FILE的Lisp代码文件。
首先尝试附加
FILE
的{{1}},然后尝试使用.elc
, 然后尝试.el
未修改(确切顺序的确切后缀是 由FILE
确定。环境变量引用 通过调用load-suffixes
将FILE
替换为其值。 此功能搜索substitute-in-file-name
中的目录。如果可选的第二个arg
load-path
不是NOERROR
, 如果nil
不存在,则报告没有错误。 在加载开始和结束时打印消息,除非 可选的第三个argFILE
不是NOMESSAGE
(但是nil
覆盖那个)。如果第四个arg
force-load-messages
的选项不是NOSUFFIX
,请勿尝试添加 指定名称nil
的后缀.elc
或.el
。如果第五个arg
FILE
的选项不是MUST-SUFFIX
,请坚持 后缀nil
或.elc
;不要只接受.el
它以其中一个后缀结尾或包含目录名。如果
FILE
是NOSUFFIX
,那么如果找不到文件,请尝试查找 通过添加非空后缀来对文件进行不同的表示 它的名字,在尝试另一个文件之前。 Emacs使用此功能查找 启用自动压缩模式时压缩的文件版本。如果
nil
不是NOSUFFIX
,请停用此功能。当
nil
为NOSUFFIX
时,此功能尝试的后缀是 由nil
的返回值和列出的值给出 在get-load-suffixes
。如果load-file-rep-suffixes
不是MUST-SUFFIX
,则只有nil
使用get-load-suffixes
的返回值,即文件名是 要求具有非空后缀。搜索后缀时,此功能通常在第一个时停止 一个存在的。如果选项
load-prefer-newer
为非零, 但是,它会尝试所有后缀,并使用最新的文件。加载文件会记录其定义及其
provide
和require
调用load-history
中的load-history
元素 car是加载的文件名。请参阅load-in-progress
。当文件正在加载时,变量
nil
不是load-file-name
而变量t
绑定到文件的名称。如果文件存在并且加载成功,则返回
pip3 install tsne
。