我正在尝试自动安装所有依赖项以进行新的Emacs安装。当我将以下代码段放入.emacs中时,我不断得到:Package `smex-' is unavailable.
我想知道这是否是预期的功能? Emacs入门套件做了类似的事情,我记得以前曾经做过。使用Emacs 24.3。
(when (not package-archive-contents)
(package-refresh-contents))
(defvar my-packages
'(smex))
(dolist (p my-packages)
(let ((s (symbol-name p)))
(when (not (package-installed-p s))
(package-install s))))
编辑
显然,这是由错误或其他原因引起的。我现在能够在最新的Emacs 24.3.1中使它工作。显然他们也进行了更改,因此程序包名称应为符号。
(package-initialize)
(when (not package-archive-contents)
(package-refresh-contents))
(defvar my-packages
'(list of packages))
(dolist (p my-packages)
(when (not (package-installed-p p))
(package-install p)))
最佳答案
参见package-compute-transaction
:
(error "Package `%s-%s' is unavailable"
(symbol-name next-pkg)
(package-version-join next-version))
关于Emacs软件包安装是否要插入破折号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19802757/