将org-mode导出为HTML:原地着色

4

我该如何指定Emacs Org-Mode在将文件导出为HTML时使用的文本颜色?

例如:

* Here is one bullet
  ** Here is another bullet
       Here is some text that I want in BOLD RED 
       Here is some other text that I want in the default face
4个回答

7

您没有说明这是否是一次性的。如果您需要样式,css样式表是有意义的。如果只是想执行您所描述的操作一次,您可以在org文件中包含HTML指令以显示红色,如下所示:

Here is some text that I want in *@@html:<font color = "red">@@BOLD RED@@html:</font>@@*

请查看Org手册中引用HTML标签一节。

7

Jeffrey已经给了答案。但是,为了添加额外的信息,请注意我正忙于在GitHub上制作一个org-macros项目,目标是使这样的行为变得轻而易举。

该项目仍处于草稿阶段(宏无法正确导出到LaTeX),完整文档尚不可用(虽然可以,但您应该查看Org源以获取实际使用语法),但是如果您克隆https://github.com/fniessen/org-macros,您应该能够使用“bgcolor”、“color”或“highlight”宏(在将org-macros.setup文件包含到您的Org文档后)。

您可以写:

INCLUDE: path/to/org-macros.setup

Here is some text that I want in *{{{color(red, BOLD RED)}}}*.

当我完成这些宏时,它们将适用于HTML和LaTeX(至少)。


这种解决方案的限制在于您不能使用大块文本来替换 BOLD RED。可能宏中存在参数长度限制。 - Sridhar Ratnakumar
我同意,对于大块文本或多个段落来说,这绝对不是最好的方式。 - fniessen
在这种情况下,最好使用特殊块,如 #+begin_bgcolor..#+end_bgcolor,并在 LaTeX/HTML/等中定义它们。 - fniessen
你在我的文档中有#+begin/end_info / warning / tip / error的示例。 - fniessen
这个 Github 仓库帮助我理解了如何美化 org mode 文档。非常感谢。 - pauljohn32

1
另一种方式。
* Here is one bullet
** Here is another bullet
#+begin_html 
Here is some text that I want in <span style='color:red'>BOLD RED</span>
#+end_html
Here is some other text that I want in the default face

1
你可以使用HTML HEAD选项,将自定义的CSS样式表链接到导出的HTML文档中:
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="style1.css" />

请查看导出的html文件以及不同机构级别被分配的类别,您应该能够很快地编写一个相当简单的样式表。这里有一个很好的例子: https://gist.github.com/mowen/326524

这是一个参考链接: http://orgmode.org/manual/CSS-support.html#CSS-support


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接