orgmode - 更改代码块背景颜色

时间:2017-06-28 20:07:59

标签: org-mode

下面的代码会将html导出背景颜色更改为#eff0fe:

#+ATTR_HTML: :style background-color:#eff0fe;
#+BEGIN_EXAMPLE
hello world!
#+END_EXAMPLE

如下: enter image description here

在emacs中编辑时如何更改背景颜色?

我看到Pretty fontification of source code blocks文件,但听起来它对我不起作用!

2 个答案:

答案 0 :(得分:2)

this page中介绍了另一种方法(我认为是更通用的方法),我在此处复制粘贴了该代码段。只会更改代码块,而不会更改#+BEGIN#+END#+RESULTS行。

以下示例将使代码块相对于emacs主题的背景颜色变暗3%(注意最后一个参数的数字3)。但是,如果在编辑过程中更改主题,代码块的颜色将保持不变。

(require 'color)
(set-face-attribute 'org-block nil :background
                    (color-darken-name
                     (face-attribute 'default :background) 3))

使用浅色主题输出:

light

使用深色主题输出:

dark

您可以进一步修改各个编程语言的代码块颜色。下面的示例将修改emacs-lisp和python的代码块颜色。

(setq org-src-block-faces '(("emacs-lisp" (:background "#EEE2FF"))
                            ("python" (:background "#E5FFB8"))))

答案 1 :(得分:1)

听起来有点名字改了,下面的配置有效:

(custom-set-faces
 '(org-block-begin-line
   ((t (:underline "#A7A6AA" :foreground "#008ED1" :background "#EAEAFF"))))
 '(org-block
   ((t (:background "#EFF0F1"))))
 '(org-block-end-line
   ((t (:overline "#A7A6AA" :foreground "#008ED1" :background "#EAEAFF"))))
 )

输出: enter image description here