Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/huntlabs/hunt-markdown

A markdown parsing and rendering library for D programming language.
https://github.com/huntlabs/hunt-markdown

dlang markdown parser render

Last synced: about 2 months ago
JSON representation

A markdown parsing and rendering library for D programming language.

Awesome Lists containing this project

README

        

# hunt-markdown
A markdown parsing and rendering library for D programming language.
The project use [commonmark](https://spec.commonmark.org/0.28/) spec, ported from [commonmark-java](https://github.com/atlassian/commonmark-java).

## Parse and render

```D
import hunt.markdown.node.Node;
import hunt.markdown.parser.Parser;
import hunt.markdown.renderer.html.HtmlRenderer;

Parser parser = Parser.builder().build();
Node document = parser.parse("This is *New*");
HtmlRenderer renderer = HtmlRenderer.builder().build();
renderer.render(document); // "

This is New

\n"
```

## How to use Tables extension?

```D
string markdown = `
## Test for tables
| head 1 | head 2 | head 3 |
|--------|--------|--------|
| row 1.1 | row 1.2 | row 1.3 |
| row 2.1 | row 2.2 | row 2.3 |
`;

auto extensions = Collections.singleton(TableExtension.create());

Parser parser = Parser.builder().extensions(extensions).build();
Node document = parser.parse(markdown);
HtmlRenderer renderer = HtmlRenderer.builder().extensions(extensions).build();

renderer.render(document);
```