Hugo 写博文,生成的markdown的有序列表显示有问题

比如使用 org 生成的 markdown是以下内容

  1. item1

  2. item2

    这里插入一段代码

  3. item3

显示出来的效果会是

  1. item1
  2. item2
 这里是一段代码
  1. item3

如果用 Visual studio code去预览的话,显示效果是正常的,但是hugo渲染是错的,有小伙伴知道怎么破么?

网上搜markdown的这个问题,答案是有序列表中插入的代码块需要4个空格的缩进,我手动修改markdown貌似也没有用。感觉像是hugo的一个bug,如果不好解决我再给hugo去报bug吧。

序列下插入表格,甚至都不会给你输出表格,他都好多东西只能在标题下正常渲染,序列下不好好渲染,不知道是不是特意这么做的。

试了下,如果 list 之间是两个空行以上就会断掉,如图

我用 org export md 命令生成的

有什么办法可破之么?强迫症受不了呀 :joy:

感觉跟导出的markdown没关系,应该是hugo使用的渲染引擎Blackfriday的bug,我觉得可能要去那边提bug。

搜了下,你的好像是这个问题

应该是这个问题:

我再研究下

这个答案貌似可行:

I see. If you put a newline after the code block but not before it, the numbering is maintained.

If you put an empty line before the code block as well as after, the numbering is not maintained. I don’t know if that is expected behavior, but it is certainly surprising to me.

貌似这样手动修改 markdown 可以解决。现在只要研究怎么让 org 输出这种格式的 markdown就行了。

1 个赞

解决了:

  1. disable code fence, 在你的 org file最上面添加配置:
#+hugo_code_fence: nil
  1. 写 org src的时候添加一个缩进:

如果没有缩进,生成的markdown的序号也是不正确的。

总结一下:

markdown里面有序列表中如果插入代码,希望代码后面的序号有序,需要给 source code block 添加缩进。