如何让Emacs重新加载我在.emacs中更新的所有定义而不重新启动Emacs?


当前回答

你通常可以重新计算改变的区域。标记~/区域。然后使用M-x eval-region RET。这通常比重新评估整个文件更安全,因为很容易编写一个.emacs文件,在加载两次后就不能正常工作。

其他回答

如果你在当前活动缓冲区中打开了.emacs文件:

M-x eval-buffer

其他人已经回答了你的问题,但我发现我通常想执行我刚刚写的行。

为此,Elisp部分的Ctrl + Alt + X工作得很好。

有很方便

m x eval-buffer

它立即计算缓冲区中的所有代码。如果你的。emacs文件是幂等的,这是最快的方法。

C-x C-e ;; current line
M-x eval-region ;; region
M-x eval-buffer ;; whole buffer
M-x load-file ~/.emacs.d/init.el

除了M-x eval-buffer或M-x load-file这样的命令,您还可以从命令行重新启动一个新的Emacs实例:

emacs -q --load "init.el"

使用示例:GNU Emacs中的公司后端