【问题标题】:org-mode uses current color theme to publishorg-mode 使用当前颜色主题发布
【发布时间】:2012-08-29 01:18:06
【问题描述】:

Org-mode 有一个很棒的功能,可以为源代码块中的文本着色。但是,它使用 emacs 主题的当前颜色。我经常使用深色 zenburn 主题,它将 Java 的某些部分置于浅色中。当我发布到 HTML 时,浅色不可读。解决方法是重新启动 emacs 并重新发布而不加载它们。

有更好的方法吗?

【问题讨论】:

  • 看看org-export-run-in-background变量。
  • 这可能会奏效。
  • M-x color-theme-standard 应该让您回到(大部分)正常颜色主题,而无需重新启动。
  • org-export-run-in-background 会因模糊的错误而失败,因为 dot-emacs 设置相当大。

标签: emacs org-mode


【解决方案1】:

默认情况下,org-mode 会根据您当前的主题导出带有内联样式信息的源代码。但是,通过将org-html-htmlize-output-type 设置为'css 而不是默认的'inline-css,生成的html 将具有与所使用的面相对应的类。然后,您可以提供自己的 css 来设置面部样式。

例如,导出一个将org-html-htmlize-output-type 设置为'inline-css 的sn-p 会得到以下结果:

<pre class="src src-sh">
<span style="color: #F0DFAF; font-weight: bold;">for</span> f<span style="color: #F0DFAF; font-weight: bold;"> in</span> *; <span style="color: #F0DFAF; font-weight: bold;">do</span>
    <span style="color: #93E0E3;">echo</span> $<span style="color: #DFAF8F;">f</span>
<span style="color: #F0DFAF; font-weight: bold;">done</span>
</pre>

在将org-html-htmlize-output-type 设置为'css 的情况下导出相同的sn-p 时:

<pre class="src src-sh">
<span class="org-keyword">for</span> f<span class="org-keyword"> in</span> *; <span class="org-keyword">do</span>
    <span class="org-builtin">echo</span> $<span class="org-variable-name">f</span>
<span class="org-keyword">done</span>
</pre> 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2019-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多