如何获取Emacs的背景类型?e、 g.';轻或';黑暗的
如何获取Emacs的背景类型?e、 g.如何获取Emacs的背景类型?e、 g.';轻或';黑暗的,emacs,elisp,Emacs,Elisp,如何获取Emacs的背景类型?e、 g.'亮或'暗 可以定义如下所示的面: (defface moedict-type '((((class color) (background light)) (:foreground "#ffffd7" :background "#525252")) (((class color) (background dark)) (:foreground "#525252" :background "#c1c1c1"))) "Fac
'亮
或'暗
可以定义如下所示的面:
(defface moedict-type
'((((class color) (background light))
(:foreground "#ffffd7" :background "#525252"))
(((class color) (background dark))
(:foreground "#525252" :background "#c1c1c1")))
"Face for type. ex: [動]、[名]")
Emacs将根据当前背景类型自动选择正确的字体。
但我想知道它是怎么做的。(如果Emacs中有内置函数,则更好)
顺便说一下,我尝试在源代码中查找并找到了一个函数(帧背景色),但它的输出类似于字符串“#ffffff”。您可以使用函数
帧参数
来获取帧的属性。对于您的特殊情况,您可以这样做
(frame-parameter nil 'background-mode)
获取当前帧的背景模式。第一个参数是要获取指定参数的帧(如果使用当前选定的帧为nil)。您可以执行C-hf
帧参数
RET您可以使用设置背景色
设置当前帧的所需颜色。是否设置背景色。这就是你想要的吗?不,我正想得到当前的背景颜色类型…检查变量帧背景模式
,它似乎就是你想要的want@IqbalAnsari:请把你的评论写在一个答案中,这个答案可以被接受,也可以被投赞成票(或反对票)。@Drew如果你是对的,我应该把上面的内容作为答案发布(社区本来可以投票的),有点得意忘形,对不起!下次会小心的。