繁体   English   中英

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

[英]Emacs org-mode markdown export: #+TITLE option not exported

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

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

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

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

  1. 定义一个自定义标题,该标题将作为顶级标题导出。

  2. 在标题插入目录。

  3. TOC不应包含标题。


自定义目录的位置

在自定义位置插入TOC很容易,因此让我们开始:

#+OPTIONS: toc:nil

README.org顶部的导出选项。 就其本身而言,这告诉org-mode在导出时不包括默认的TOC。 然后,您可以通过插入将TOC放置在所需位置

#+TOC: headlines

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


自定义标题未显示在目录中

定义不包含在TOC中的自定义标题有些棘手,但是基本思想是通过将其格式设置为Markdown标题而不是org标题来将标题从TOC中排除。 第一步,将README.org更改为如下所示:

#+OPTIONS: toc:nil

# Emacs als Python-Power-Editor für den RasPi

#+TOC: headlines

* Wieso nur ausgerechnet Emacs???
...

开箱即用将不会产生期望的结果,因为org会将标题解释为注释,并且默认情况下Markdown导出器配置为忽略注释。 但是,为了更改默认行为,您可以

  1. .emacs注释定义自定义代码转换器:

     (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))) 
  2. 重新定义Markdown导出后端以使用此代码转换器:

     (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文件中,并更改行

     (comment . (lambda (&rest args) "")) 

    如上图所示。


结果

通过这些自定义,生成的README.md文件如下所示:

# Emacs als Python-Power-Editor für den RasPi

<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#sec-1">1. Wieso nur ausgerechnet Emacs???</a></li>
<li><a href="#sec-2">2. Die Maus ist tot, es leben die shortcuts!</a></li>
<li><a href="#sec-3">3. Auf den Emacs, fertig, los!</a></li>
</ul>
</div>
</div>

# Wieso nur ausgerechnet Emacs???
...

参见http://article.gmane.org/gmane.emacs.orgmode/82634

该问题应该得到解决。 只在GitHub网站上等待转换器的更新...

这对于获得答案的期望很有用,但我认为这不是解决此问题的正确方法 我来解释一下

我认为问题在于将选项从org-mode导出到md,但我也想将我的文档保留在org-mode中,并且这种hack org-mode导出选项为标题导出到md标题1添加了另一行,但不能管理整个事情。

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

  • 从orgmode到md的标题以一个(#)开头-就像orgmode到html一样。

  • 从orgmode(*)到md标题2(##)的标题

如果不是这个问题,我应该打开一个新的:)

最好!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM