如何强制pandoc不构建<a> tag when url is in YAML metadata

时间:2017-11-03 12:09:11

标签: r yaml r-markdown pandoc

Let's say we have simple empty .Rmd file with YAML metadata like this

---
link: https://google.com
---

Then in html template, it will show up automatically in <a> tag

<a href="http://google.com" class="uri">http://google.com</a>

How to force pandoc not to build <a> when there is url in YAML? I mean what I wanna finally get is plan text in html template

http://google.com

Or if I use own html template I can add a link that way

<a href="$link$">Google</a>

Thanks for help!

2 个答案:

答案 0 :(得分:2)

这是由默认情况下使用输出格式下的md_extensions选项启用的扩展程序引起的,特别是auto_link_bare_uris。您可以在 YAML 标题中禁用此功能。

---
title: https://www.google.com
output:
  html_document:
    md_extensions: -autolink_bare_uris
---

请注意,这会影响整个文档中URI的自动链接,而不仅仅是标题中的URI。禁用扩展后,您需要在尖括号中包含链接以创建链接, <https://www.google.com> Pandoc guide R Markdown site包含详细信息。

答案 1 :(得分:1)

使用HTML ASCII引用替换标题中的字符将停止链接自动生成并正确显示在页面上。例如,在这里我替换冒号:

---
title: https&#58;//gooogle.com
---