跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 请教一个关于 hugo 渲染 markdown 的问题
未分類
12 5 月 2020

请教一个关于 hugo 渲染 markdown 的问题

请教一个关于 hugo 渲染 markdown 的问题

資深大佬 : mathzhaoliang 5

我的问题是这样的:我在使用 hugo 的时候,使用的是外部的渲染程序 pandoc,因为它对 latex 处理的比较好.但是 pandocc 会把代码块转换为一个类 sourceCode,这一点跟默认的 md 渲染是不同的,默认出来的类就是 code. 现在我想使用外部 cdn 网站上的 prismjs 这个工具来高亮代码,但是它不认识 sourceCode 类,导致代码无法高亮.请教大家有什么好的办法解决没有?

大佬有話說 (5)

  • 資深大佬 : YuxiangLuo

    改一下 pandoc 源码,把 sourceCode 换成 code

  • 資深大佬 : phy25

    https://prismjs.com/extending.html#api

  • 資深大佬 : ernest

    hugo pipeline 在 template 里拿到 Content 正则匹配替换下也行吧

  • 資深大佬 : krjt

    这个只要写一个 pandoc filter [1] 把 CodeBlock 转换成 RawBlock “html” 就好了,具体的 AST node 可以在这里 [2] 找到,如果不会用 Haskell 也有提供 lua 和 python 的库的。我之前写的 karasu [3] 里面其实有不少例子。

    [1]: https://pandoc.org/filters.html
    [2]: https://hackage.haskell.org/package/pandoc-types-1.20/docs/Text-Pandoc-Definition.html
    [3]: https://github.com/Krasjet/karasu/tree/master/src/Karasu/Pandoc/Filters

  • 主 資深大佬 : mathzhaoliang

    多谢指点。我暂时通过更换 highlisht.js 来高亮解决的。我想到了手写 filter 这个方案,但是我不知道应该在哪里插入代码,我都不知道 hugo 是在何时调用 pandoc 来渲染 md 文件的。我只是在文件头部里面指定了 `markup: pandoc` 然后它自动渲染的。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具