我将尝试在Windows 7电脑上运行Emacs v22.2,但是启动时init
文件未能被加载(使用M-x load-file
手动加载可以正常工作)。
我已经尝试了以下两种方法:
~\.emacs, ~\_emacs
~\.emacs.d.init.el
但问题仍然存在。
评估
(insert (getenv "HOME"))
返回预期的值。我曾经遇到过类似的问题(在Windows 10上)。问题出在Emacs启动时读取了~\.emacs
而不是~\.emacs.d\init.el
。将~\.emacs
的内容移到~\.emacs.d\init.el
中并删除~\.emacs
即可解决该问题。
我刚刚在Windows 7上安装了修补过的Emacs版本,指定了环境变量HOME=c:\klang
,从github检出了十年前的配置文件,并添加了
(and (= emacs-major-version 23)
(defun server-ensure-safe-dir (dir) "Noop" t))
打开~/.emacs.d/init.el
文件即可使用。
你缺少的是一些mule.el
组件,只需安装新版本的emacs即可解决问题。
如果在一般环境中没有设置HOME
,(getenv "APPDATA")
可能会接管并尝试在该目录下读取您的初始化文件。
我刚刚成功解决了相同的问题(lcollado和klang的答案给了我一个小提示来解决它)。
我在C:\ Users \ Edwin \ .emacs.d \ init.el
设置了一个配置文件,当我尝试让Emacs加载它时,它没有加载。我的最初想法是在C:\ Users \ Edwin \ AppData \ Roaming \ .emacs.d \ init.el
创建一个init.el
文件,它将加载我原始的配置文件。 然而,我想要一个更简单的解决方案。
然后我记得符号链接存在。所以我搜索了一些如何在Windows中创建符号链接以及硬链接和软链接之间的区别。
我第一次尝试创建指向我的init.el
的软链接。但是Emacs忽略该链接并在没有init.el
的情况下启动。
下一个尝试成功的是一个硬链接。我所做的步骤如下:
以管理员权限打开命令提示符。
a. 按下 Windows + R。
b. 输入 "cmd.exe" 并按下 Shift + Enter。
c. 当 Windows 请求管理员权限时,点击 "是"。
进入您的主目录。
a. 输入 cd C:\Users\<your name>
。
运行以下命令在 C:\Users\<your name>\AppData\Roaming\.emacs.d\init.el
中创建一个硬链接:
:: mklink /h Destination Source
:: Destination - 您想要硬链接的位置和名称是什么?
:: Source - 您想要链接的文件是什么?
mklink /h AppData\Roaming\.emacs.d\init.el .emacs.d\init.el
("C:\\home\\bin\\emacs\\bin\\emacs.exe")
Loading encoded-kb...done
load-with-code-conversion: Symbol's value as variable is void: setenv
~/.emacs.d/init.el
д№ҹдёҚиө·дҪңз”ЁгҖӮ - Aerion