tree-sitter-markdown
Markdown (CommonMark Spec v0.29-gfm) grammar for tree-sitter
Note: This grammar is based on the assumption that link label matchings will never fail since reference links can come before their reference definitions, which causes it hard to do incremental parsing without this assumption.
Install
npm install tree-sitter-markdown tree-sitter
Usage
const Parser = require("tree-sitter");
const Markdown = require("tree-sitter-markdown");
const parser = new Parser();
parser.setLanguage(Markdown);
const sourceCode = `
# foo
- bar
baz
`;
const tree = parser.parse(sourceCode);
console.log(tree.rootNode.toString());
// (document
// (atx_heading
// (atx_heading_marker)
// (heading_content
// (text)))
// (tight_list
// (list_item
// (list_marker)
// (indented_code_block
// (text))
// (paragraph
// (text)))))
License
MIT Β© Ika