【发布时间】:2019-10-26 17:35:32
【问题描述】:
我大量使用 emacs org-mode,但通常不使用 emacs。我仍在使用 emacs 25.3,但也安装了 26.3。今天晚上,在 Windows 更新后(可能是问题的原因?),当我在 25.3 下重新启动 emacs (runemacs) 时收到以下错误消息。
错误:未提供必需的功能“ht”
我也尝试在 emacs 26.3 下运行它并收到一条更有用的错误消息“c:etc. etc. /AppData/Roaming/.emacs.d/elpa/ht-20190924.704/ht.elc failed to provide feature 'ht'"
我在几周内没有更改或更新任何软件包。所以,不太可能是 org-mode 或 emacs 的变化。
我尝试了各种不同的方法,但没有任何运气。除其他外,我从几天前的备份中恢复了 elpa 文件和我的自定义文件,但没有得到不同的结果。
带有 emacs 25.3 的package-list-package 可以处理错误消息,我可以升级可以升级的包(2)。但是,这对我重新启动 emacs 时收到的错误消息也没有影响。这确实意味着 ht.elc 正在工作,因为没有它,您将无法安装软件包,因为新软件包需要检查其哈希码。如果我删除 ht 包并尝试在没有它的情况下更新包,则更新会在哈希码检查中失败。
带有 emacs 26.3 的 package-list-package 是另一个问题,这可能是我不使用它的原因。 TLS连接失败,无法连接melpa、orgmode.org等
无论如何,此时我无法加载我的自定义文件,也无法使用 org-mode。有人有什么想法、问题或建议吗?
提前致谢。
【问题讨论】:
-
我不知道
ht是什么,但错误可能意味着它所说的。一个功能不是provided,除非它包含执行此操作的代码。(provide 'ht)在这种情况下。所以检查ht.el看看它是否真的这样做了(它应该在文件的最后)。如果是这样,请尝试手动对其进行字节编译。如果没有,那么(a)它应该是一个错误,或者(b)它出于某种原因故意不这样做,但其他东西正在尝试(require 'ht)(因此出现错误)。 -
我假设
c:etc. etc.不是错误消息中的路径字面包含的内容(并且真实路径是准确的)。 -
等等等等是我隐藏文件路径中包含的个人信息,是的,真实路径是正确的。 ht.el 包是一个哈希表库。我非常依赖的另一个 org 包将 ht 作为依赖项。