如何通过备注从 Markdown 中获取 AST 树

Posted

技术标签:

【中文标题】如何通过备注从 Markdown 中获取 AST 树【英文标题】:How to get AST tree from markdown via remark 【发布时间】:2016-10-20 15:33:38 【问题描述】:

使用这样的代码:

var remarkAbstract = require("remark");
var remark = remarkAbstract();

let remark = remarkAbstract();
var ast = remark.process(input);

但它会返回如下输出:

AssertionError: VFile 
  contents: '# header\n\n20 December 2012\n\n![alt](http://yo.io/)\n\ncontent1\n\ncontent2\n\n## header2\n',
  messages: =

我想获取 AST 树 like this

【问题讨论】:

【参考方案1】:

通过将remark.process(input) 替换为remark.parse(input)

附:此外,这对于 *** 来说不是一个很好的问题。我建议阅读一下:)

【讨论】:

我有同样的问题,我已经阅读了remark 的文档,但是文档似乎太简单了,没有介绍如何入门。 关于这个问题的问答,How to parse markdown to json using remark,可能会有所帮助。

以上是关于如何通过备注从 Markdown 中获取 AST 树的主要内容,如果未能解决你的问题,请参考以下文章

从AST获取方法时的错误声明

如何配置 remark.js 来解析 Markdown 中嵌入的 HTML?

我可以从 cppyy 获取 AST

备注CSDN-markdown编辑器

如何从 C 级代码访问 Ruby AST?

如何从弹性搜索中获取最后30分钟的记录