【问题标题】:why cant emacs 24 find a custom theme I added?为什么 emacs 24 找不到我添加的自定义主题?
【发布时间】:2012-04-08 02:14:14
【问题描述】:

我的整个 emacs 设置是 here

我加载了我的 init-theme.el 文件 here

据说这应该使the darkclean theme可用。

但是当我输入M-x load-theme TAB 时,没有列出darkclean 主题。

如何为 Emacs 24 注册它?

【问题讨论】:

  • look here emacs 24 有自己的主题支持。

标签: emacs dot-emacs emacs24


【解决方案1】:

如果您通过elpa / package.el 安装主题,您会注意到您需要将每个主题文件夹添加到您的custom-theme-load-path - 这手动操作有点麻烦,尤其是当您考虑到升级将创建一个新文件夹,例如0.1.0 -> 0.1.2 将是您的 elpa 文件夹中的一个新文件夹。

假设您已将您的 elpa 软件包安装到 ~/.emacs.d/elpa/ 中,将此脚本添加到您的 ~/.emacs.d/init.el

(require 'dash)
(require 's)

(-each
   (-map
      (lambda (item)
      (format "~/.emacs.d/elpa/%s" item))
   (-filter
      (lambda (item) (s-contains? "theme" item))
      (directory-files "~/.emacs.d/elpa/")))
   (lambda (item)
      (add-to-list 'custom-theme-load-path item)))

您需要 dash.els.el(可从 elpa 获得。)

【讨论】:

  • 仅供参考,使用el-get 不需要手动更新您的加载路径。我已经用C-h v RET custom-theme-load-path 验证了我的自动更新。
  • @TimS。许多主题在安装时会自动添加到custom-theme-load-path(大多数更新/维护良好的主题至少会。)。上面的脚本只是添加了那些没有的。 el-get 源代码本身似乎与custom-theme-load-path 没有任何关系,请继续使用 grep。
  • 是的,我的意思是安装的许多主题会自动更新路径,而不是 el-get 本身......我的错误。谢谢。
【解决方案2】:

init-themes 已注释掉加载路径。

我有这个(add-to-list 'custom-theme-load-path "~/.emacs.d/themes"),我认为它用M-x load-themeenter 找到了我所有的主题,然后点击标签查看所有主题。

在 github 中没有搜索到您的 repo,所以我无法通过 grep 来查看您是否在其他地方进行搜索。你的darkclean也兼容24主题吗?

编辑:1

实际上我想到了另一种调试技术来排除它是darkclean vs setup。放入你的目录 solarized theme 如果你没有在你的加载主题中看到它,你知道它是你而不是主题,因为 solarized 在 emacs 24 上以这种方式为我工作。

我不喜欢它,实际上更喜欢袋熊。

【讨论】:

【解决方案3】:

我是 emacs 新手,想添加一些自定义主题并创建自己的主题。

先添加这个

(add-to-list 'custom-theme-load-path "~/.emacs.d/themes")

然后将任何新主题添加到该文件夹​​。 这首先不起作用,当我使用加载主题时, ~/.emacs.d/thems 中的主题未加载。

文档说:

每个主题文件都被命名为 THEME-theme.el,其中 THEME 是主题 名字。

所以将 darklean.el 重命名为 darkclean-theme.el 就成功了

【讨论】:

  • 啊,成功了!谢谢,在我看到你只需要添加 -theme 到最后之前,我的头发为什么找不到我的主题。谢谢一百万!
【解决方案4】:

我认为您需要设置 custom-theme-directory 然后包含 custom-safe-themes 中的 sha256 hash 删除确认提示 每次你加载它。要插入 sha256 哈希,您可以使用 customize 接口,然后为您计算。要启用 主题,您必须将其包含在 custom-enabled-themes 中。

以下是我的设置示例:

(custom-set-variables
 ;; ...
 '(custom-enabled-themes (quote (dark-emacs)))
 '(custom-safe-themes (quote ("<SHA256 hash goes here>" default)))
 '(custom-theme-directory "~/.emacs.d/themes/")
)

要查看我的实际设置,请查看以下链接:

【讨论】:

    猜你喜欢
    • 2015-02-27
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    • 2023-02-18
    相关资源
    最近更新 更多