在windows上安装emacs插件
我已经浏览了其他主题,但仍然找不到解决方案。我正在尝试在Windows7中为Emacs安装“nxhtml”插件。我已经将“HOME”环境变量设置为“C:\”。因此,我的.emacs.d文件夹就在那里,我将nxhtml放在那里,并在我的“_emacs.d”文件中添加了以下行,如自述文件所示: (加载“C:\.emacs.d\nxhtml\autostart.el”) 但它没有加载 我还试着说: (添加到列表“加载路径”C:\.emacs.d\nxhtml) (加载“autostart.el”)在windows上安装emacs插件,windows,emacs,nxhtml,Windows,Emacs,Nxhtml,我已经浏览了其他主题,但仍然找不到解决方案。我正在尝试在Windows7中为Emacs安装“nxhtml”插件。我已经将“HOME”环境变量设置为“C:\”。因此,我的.emacs.d文件夹就在那里,我将nxhtml放在那里,并在我的“_emacs.d”文件中添加了以下行,如自述文件所示: (加载“C:\.emacs.d\nxhtml\autostart.el”) 但它没有加载 我还试着说: (添加到列表“加载路径”C:\.emacs.d\nxhtml) (加载“autostart.el”) 但
但是没有用。。。有人能在这里说明一下吗?tnx.
\
在字符串的(双引号)读取语法中是特殊的,因为某些字符在以反斜杠作为前缀时具有新的含义(例如,\n
是换行符,\t
是制表符,\“
是双引号字符)。如果以下字符与反斜杠没有任何特殊含义,则将逐字使用该字符,并忽略反斜杠
“C:\.emacs.d\nxhtml\autostart.el”
实际上是字符串:
C:.emacs.d
xhtml^Gutostart.el
要在字符串中包含\
,需要编写\
然而,尽管Emacs可以理解反斜杠,但它现在在所有平台上都是一致的,允许/
作为目录分隔符1;因此只需这样做即可
1和过时的
目录sep char
变量已被完全删除。这里有几点:
首先,_emacs.d不是init文件的默认文件名,即emacs不会自动加载。请尝试~/.emacs.d/init.el或~/.emacs
其次,Windows 7有一个功能,它可以防止程序写入某些系统目录,但为了向后兼容执行此操作的许多旧程序,而不是导致它们失败,它会在应用程序特定的目录中以静默方式将写入重定向到其他地方。C:\是这些目录之一,因此请设置您的主目录这是自找麻烦
第三,看到另一个关于反斜杠是Lisp字符串中的转义字符的响应。你究竟为什么要将
HOME
设置为C:\
?(Windows 7没有C:\Users\(username)
用于此功能吗?)如果你是说你为Windows自己的环境配置了反斜杠(与Cygwin或类似的配置相反),那么我想你是在问问题……除非Windows默认没有HOME
环境变量(但即使是这样,这似乎也不是个好主意。)嗨,phils,是的,我知道双反斜杠,我已经试过了,但是没有用。我也试过正斜杠,但没有用。在我的emacs文件中,我只使用普通反斜杠更改了默认目录,它工作正常。XVirtusX:你应该查看C-h I g
(emacs)Windows HOME
RET
Hi Phils…是的,\u emacs.d是Windows上可接受的emacs init文件,因为您无法在资源管理器上创建以点开头的文件。如果您想更改默认目录,我还从别处读到了设置HOME环境变量的建议(不,Windows上没有默认的)(我的情况)。无论如何,问题是,我已经对emacs做了一些更改,它工作正常。所以我想引用文件或环境变量不是问题……我还应该尝试什么?!使用*scratch*
缓冲区检查代码的结果。评估(file-exists-p“C:/.emacs.d/nxhtml/autostart.el”)
以确保它返回t
,然后返回(加载“C:/.emacs.d/nxhtml/autostart.el”)
检查它是否会加载。C-j
结束后,paren将在*scratch*
中求值并打印。XVirtusX,指出_emacs.d不被识别为init文件名的是我,而不是phils。这是Windows上的一个特例,适用于坚持使用资源管理器创建空文件而不仅仅是编辑的人Emacs中的文件_Emacs是除.Emacs之外可以识别的,但这不适用于.Emacs.d目录,也不适用于任何同名文件。我建议您按照phils的建议阅读有关Windows上HOME处理的手册部分,以便更好地理解内容。