Warm tip: This article is reproduced from serverfault.com, please click

其他-hugo-markdown链接文本中的文字“ ”

(其他 - literal "<" and ">" in hugo-markdown link-text)

发布于 2020-12-15 11:07:01

我使用的hugo是Debian中打包的程序,使用默认的渲染器(goldmark)和kube主题。

$ hugo version
Hugo Static Site Generator v0.78.2/extended linux/amd64 BuildDate: 2020-11-16T11:43:13Z

我想给包含尖括号的文本提供一个超链接。

就像是:

[`https://example.com/<slug>`](https://example.com/)

应该像这样出来https://example.com/<slug>(并且在StackOverflow上可以正常工作)。

但是,对于hugo,相同的输入将呈现为(如浏览器所示):

 <code>https://example.com/&lt;slug&gt;</code>

顺便说一句,上面的字符串超链接到了https://example.com/,因此部分正常工作。

没有 `

我不介意省略代码格式化,但是它也不起作用(并产生不同但仍然错误的输出)。

输入为:

[https://example.com/<slug>](https://example.com/)

雨果渲染的输出是(如浏览器中所示):

 https://example.com/<!-- raw HTML omitted --> 

(顺便说一句,StackOverflow将此呈现为https://example.com/,所以它似乎无论如何都无法工作...)

&lt;&gt;

我也尝试过:

[http://example.com/&lt;slug&gt;](http://example.com/)

但这表示为:

 http://example.com/&lt;slug&gt; 

因此,我将如何继续https://example.com/<slug>在雨果箱中创建“ ”。

Questioner
umläute
Viewed
12
Thomas Hansen 2020-12-17 20:02:41

请参考此答案https://stackoverflow.com/a/63206852如果使用config.yaml,则应包括:

markup:
  goldmark:
    renderer:
      unsafe: true

一个config.toml版本应该是:

[markup]
  [markup.goldmark]
    [markup.goldmark.renderer]
      unsafe = true

在这种情况下

[http://example.com/&lt;slug&gt;](http://example.com/)

将工作。

说明:在Hugo文档(请参阅https://gohugo.io/getting-started/configuration-markup#goldmark)中,对不安全模式的解释是:

默认情况下,Goldmark不呈现原始HTML和潜在危险的链接。如果你有很多内联HTML和/或JavaScript,则可能需要打开它。

有关URL中不安全字符的更多信息,请参见RFC 1738,“统一资源定位符”规范,p。2