有没有办法防止emacs package manager在启动时加载单个包?

有没有办法防止emacs package manager在启动时加载单个包?,emacs,elisp,elpa,Emacs,Elisp,Elpa,基本上,我在多台机器上共享一个.emacs.d,并且有一个我只想在我的家用机器上使用的包(OrgJournal)。我喜欢使用包管理器使其保持最新,但它会在每台机器上加载包,这会对正常的工作流程造成一些干扰 有没有办法让包管理器跳过加载这一个包而加载所有其他包 埃塔:我试着只通过 (when (string-equal (system-name) "will-desktop") (require 'org-journal)) 但是这不起作用,因为在我的init.el中的早期使用(pa

基本上,我在多台机器上共享一个.emacs.d,并且有一个我只想在我的家用机器上使用的包(OrgJournal)。我喜欢使用包管理器使其保持最新,但它会在每台机器上加载包,这会对正常的工作流程造成一些干扰

有没有办法让包管理器跳过加载这一个包而加载所有其他包

埃塔:我试着只通过

(when (string-equal (system-name) "will-desktop") 
     (require 'org-journal))

但是这不起作用,因为在我的init.el中的早期使用
(package initialize)
会自动加载它。

请参阅
package load list
变量

默认值为
(all)
,文档字符串表示
all
仅影响其他元素未指定的包,因此根据我的理解,您可以简单地添加以下内容以禁止
org journal

(setq package-load-list '((org-journal nil) all))
如果强制初始化init文件中的包管理器,请确保事先进行此更改


编辑:已测试和更新/修复<代码>添加到列表错误,因为此时尚未定义变量。

。我看到了那个变量,但不知道有什么方法可以排除这样一个条目。我喜欢今天我学到了一些关于emacs lisp的新知识。