如何在Emacs 24中获取可用主题列表?

时间:2014-03-22 06:17:46

标签: emacs elisp

我知道你可以做到

M-x load-theme RET

并获取自动完成的可用主题列表,您可以从中选择一个。

我正在寻找的是一种通过Emacs LISP获取此主题列表的方法,以便我可以使用自定义键绑定循环访问它,而无需查看所有可用的主题并切换一个人手动。

1 个答案:

答案 0 :(得分:5)

函数custom-available-themes应该为您提供主题列表。


我不知道这是“我的头脑”,但是一旦人们在Emacs Lisp代码中轻松挖掘,Emacs就是一个相当可发现的系统。以下是我找到这个答案的方法:

  1. 开始使用非自定义的Emacs实例:

    % emacs -q
    

    我想确保我的正常自定义(已安装的软件包等)都不会干扰我的调查。

  2. 由于列表在M-x load-theme RET之后的自动填充期间可用,我开始使用该功能:

    C-h f load-theme RET
    
  3. 切换到*Help*缓冲区,然后点击load-themecustom.el定义链接上的Enter键。

  4. 扫描load-theme的定义,看它是否正在安排自定义完成处理程序。其(interactive …)形式使用函数completing-read,为其提供此格式的输出:

    (mapcar 'symbol-name (custom-available-themes))
    
  5. C-h f RET上的custom-availabe-themes快速验证了这是可用主题列表的来源。