随着我向我的 emacs 的 init.el 添加越来越多的插件和配置,它的启动变得越来越慢。有没有办法避免这种情况?
问问题
1196 次
2 回答
19
你的.emacs
orinit.el
不应该有很多require
orload
命令,它应该主要有autoload
. 该autoload
函数告诉 Emacs “如果你需要这个函数,加载那个文件”。这样,只有在您实际使用该功能时才加载文件。您只需要require
(或很少load
)在两种情况下:
- 如果有需要立即生效的定制(例如
(require 'cl)
,颜色主题); - 如果您正在加载的是一个小文件,其中包含
autoloads
一个包的和其他启动定义(例如(require 'tex-site)
.
如果您还没有这样做,那么调用autoload
特定于模式的自定义之类的东西可以显着缩短您的启动时间,因为 Emacs 将不得不加载更少的文件。
此外,确保您的文件是字节编译的;它们的加载速度会更快(更少的 CPU 时间)。调用M-x emacs-lisp-byte-compile
每个.el
文件,或者M-x byte-recompile-directory
(这些命令在 Emacs-Lisp 菜单中)。
最后,请注意加载时间并不重要,因为您应该在每个会话最多启动一次 Emacs。登录时自动启动 Emacs,无论是使用窗口还是在后台使用--daemon
选项。然后,要编辑文件,请运行emacsclient
. 如果你不想在登录时启动它,你也可以告诉emacsclient
它是否启动 Emacs 。
于 2011-04-15T21:23:54.330 回答
2
您可以将其编译为 .elc 文件(Mx 字节编译文件)
于 2011-04-15T21:22:25.947 回答