Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: 3 months ago
JSON representation
A markdown parsing and rendering library for D programming language.
- Host: GitHub
- URL: https://github.com/huntlabs/hunt-markdown
- Owner: huntlabs
- Created: 2018-12-18T10:28:41.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-04-15T09:48:14.000Z (almost 3 years ago)
- Last Synced: 2024-08-04T01:06:12.189Z (6 months ago)
- Topics: dlang, markdown, parser, render
- Language: D
- Size: 262 KB
- Stars: 11
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-d - hunt-markdown - A markdown parsing and rendering library for D programming language. Support commonMark. (Text Processing / Language Processing)
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);
```