基本上,我在几台机器上共享一个.emacs.d,并且在我的家用机器(org-journal)上只有一个我想要的包。我喜欢使用包管理器来保持最新,但是它会在每台机器上加载包,这会对正常的工作流造成一些干扰。
有没有办法让软件包管理器跳过加载这个软件包但加载所有其他软件包?
ETA:我只尝试通过
将其加载到桌面上(when (string-equal (system-name) "will-desktop")
(require 'org-journal))
但这不起作用,因为在我的 init.el 中尽早使用(package-initialize)
会自动加载它。
答案 0 :(得分:2)
请参阅package-load-list
变量。
默认值为(all)
,文档字符串表示all
仅影响其他元素未指定的包,因此,根据我的阅读,您只需添加以下内容即可禁止org-journal
:
(setq package-load-list '((org-journal nil) all))
如果您在init文件中强制初始化软件包管理器,请确保事先进行此更改。
编辑:经过测试和更新/修复。 add-to-list
错误,因为此时尚未定义变量。