Emacs组织模式降价输出:#+ TITLE选项未导出

时间:2014-06-09 15:41:33

标签: emacs export markdown org-mode

我使用优秀的org-mode轻松地将README.md的修改推送到GitHub项目。 Markdown导出效果很好,除了#+TITLE选项没有导出到Markdown之外 - 它可以完美地用于HTML导出。

我想保留文件名README.org以方便转换为Markdown,否则我可以选择标题作为文件名,在GitHub上正确显示标题。

有关如何实现这一目标的任何建议吗?

3 个答案:

答案 0 :(得分:5)

根据您的问题和后续评论,您似乎想要实现三件事:

  1. 定义导出为顶级标题的自定义标题。

  2. 在标题后插入TOC

  3. TOC不应包含标题。


  4. TOC的自定义位置

    在自定义位置插入TOC很简单,所以我们先从中开始:添加

    #+OPTIONS: toc:nil
    

    README.org顶部的导出选项。这本身就告诉org-mode在导出时不要包含默认的TOC。然后,您可以通过插入

    将TOC放置在您想要的位置
    #+TOC: headlines
    

    在所需的位置。 (此method并非特定于Markdown导出。)


    未在TOC中显示的自定义标题

    定义未包含在TOC中的自定义标题有点棘手,但基本思路是通过将其格式化为Markdown标题而不是{{}来从TOC中排除标题1}}标题。首先,将org更改为如下所示:

    README.org

    开箱即用,这不会产生预期的结果,因为#+OPTIONS: toc:nil # Emacs als Python-Power-Editor für den RasPi #+TOC: headlines * Wieso nur ausgerechnet Emacs??? ... 会将标题解释为注释,默认情况下,Markdown导出器配置为忽略注释。但是,为了更改默认行为,您可以

    1. org中为评论定义自定义代码转换器:

      .emacs
    2. 重新定义Markdown导出后端以使用此代码转换器:

      (defun org-md-comment (comment contents info)
        "Transcode COMMENT object into Markdown format.
      CONTENTS is nil.  INFO is a plist holding contextual information."
        (format "# %s" (org-element-property :value comment)))
      

      后端的原始定义可以在文件(org-export-define-derived-backend 'md 'html ;; ... :translate-alist '((bold . org-md-bold) (code . org-md-verbatim) (comment . org-md-comment) ;; <--- Use custom transcoder (comment-block . (lambda (&rest args) "")) ;; ... )) 中找到;此文件位于ox-md.el安装目录中。您需要将完整定义复制到org-mode文件并更改行

      .emacs

      如上所示。


    3. 结果

      通过这些自定义,生成的(comment . (lambda (&rest args) "")) 文件如下所示:

      README.md

答案 1 :(得分:1)

请参阅http://article.gmane.org/gmane.emacs.orgmode/82634

问题应该是固定的。只等待GitHub网站上的转换器更新...

答案 2 :(得分:1)

这对于获得答案所期望的内容非常有用,但我认为解决此问题不是正确的路径。让我解释一下

我认为问题是关于从org-mode导出选项到md ,但我也希望将我的文档保留在org-mode中,这样就破解了org-mode导出选项,为标题导出添加了另一行标题1但不管理整个事情。

我的期望是什么,我想这是重要的问题是将orgmode正确导出到md ,我的意思是:

  • 标题从orgmode到md标题为一个(#)-as orgmode为html。

  • 标题一从orgmode(*)到md标题二(##)

如果这个问题与此无关,我应该开一个新问题:)

最佳!