我知道你可以做到
M-x load-theme RET
并获取自动完成的可用主题列表,您可以从中选择一个。
我正在寻找的是一种通过Emacs LISP获取此主题列表的方法,以便我可以使用自定义键绑定循环访问它,而无需查看所有可用的主题并切换一个人手动。
答案 0 :(得分:5)
函数custom-available-themes
应该为您提供主题列表。
我不知道这是“我的头脑”,但是一旦人们在Emacs Lisp代码中轻松挖掘,Emacs就是一个相当可发现的系统。以下是我找到这个答案的方法:
开始使用非自定义的Emacs实例:
% emacs -q
我想确保我的正常自定义(已安装的软件包等)都不会干扰我的调查。
由于列表在M-x load-theme RET
之后的自动填充期间可用,我开始使用该功能:
C-h f load-theme RET
切换到*Help*
缓冲区,然后点击load-theme
中custom.el
定义链接上的Enter键。
扫描load-theme
的定义,看它是否正在安排自定义完成处理程序。其(interactive …)
形式使用函数completing-read
,为其提供此格式的输出:
(mapcar 'symbol-name (custom-available-themes))
C-h f RET
上的custom-availabe-themes
快速验证了这是可用主题列表的来源。