如何在org-mode的HTML导出中禁用自动标题包含?

9

我有一个包含许多小的org文件的org模式项目,我想将它们导出为HTML。由于它们没有适当的标题,因此我没有在许多文件中设置#+TITLE。我发现在导出时,部分第一句话被导出为文档的标题。

例如,像这样的org文档:

This is a short file.

Mary had a little lamb, etc.

将被导出为以下HTML:
*snip*
<div id="content">
<h1 class="title">This is a short file.</h1>


<p>Mary had a little lamb, etc.</p>
*snip*

我希望上述文件中的两个句子都被标记为段落。我该如何禁用自动切换标题的功能?

2个回答

8
为了避免第一行成为标题,您可以设置一个空标题:

#+Title:

This is a short file.

Mary had a little lamb, etc.

1
这也会禁用<title> - Alex

5

如果你查看org-export-region-as-html的代码,你会看到以下片段:

(title (or (and subtree-p (org-export-get-title-from-subtree))
           (plist-get opt-plist :title)
           (and (not
                 (plist-get opt-plist :skip-before-1st-heading))
                (org-export-grab-title-from-buffer))
           (and buffer-file-name
                (file-name-sans-extension
                 (file-name-nondirectory buffer-file-name)))
           "UNTITLED"))

如果没有定义标题,将调用函数org-export-grab-title-from-buffer。您可以通过 advising它来禁用此功能。
(defadvice org-export-grab-title-from-buffer (around org-export-grab-title-from-buffer-disable activate))

你能否提供描述这个功能的文档链接?你是怎么知道这个的? - troutwine
1
@troutwine 我认为他只是读了源代码.. 实际上,defadvice 不是 Org 提供的设置,而是由用户使用 Lisp 魔法创建的。 - kindahero
2
你可以告诉 org mode 没有标题,那么它就不会有标题。你不需要对它进行黑客攻击。 - grettke
这个答案已经过时了:自2014-05-22以来,函数 org-export-grab-title-from-buffer 已不再存在,所以任何现代版本的 org(9.x.x)都没有它。 - NickD

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