maud-pulldown-cmark

Crates.iomaud-pulldown-cmark
lib.rsmaud-pulldown-cmark
version0.5.0
sourcesrc
created_at2016-01-19 10:00:22.481612
updated_at2016-12-03 12:39:50.680139
descriptionAn adapter between maud and pulldown-cmark
homepagehttps://nemo157.com/maud-pulldown-cmark
repositoryhttps://git.nemo157.com/rust/maud-pulldown-cmark
max_upload_size
id3926
size34,114
Nemo157 (Nemo157)

documentation

https://nemo157.com/maud-pulldown-cmark

README

maud-pulldown-cmark downloads-badge release-badge license-badge

This library implements an adapter to allow rendering markdown strings inside a maud macro using pulldown-cmark efficiently.

This library requires nightly rust to run the tests as they use the maud_macros plugin.

Example

#![feature(plugin)]
#![plugin(maud_macros)]

extern crate maud;
extern crate maud_pulldown_cmark;

use maud_pulldown_cmark::Markdown;

fn main() {
    let markdown = "
1. A list
2. With some
3. Values";

    let buffer = html! {
        div {
            (Markdown::from_string(markdown))
        }
    };

    println!("{}", buffer.into_string());
}
#![feature(plugin)]
#![plugin(maud_macros)]

extern crate maud;
extern crate maud_pulldown_cmark;
extern crate pulldown_cmark;

use maud_pulldown_cmark::Markdown;
use pulldown_cmark::{Parser, Event};

fn main() {
    let markdown = "
1. A list
2. With some
3. <span>Inline html</span>";

    let events = Parser::new(markdown).map(|ev| match ev {
        // Escape inline html
        Event::Html(html) | Event::InlineHtml(html) => Event::Text(html),
        _ => ev,
    });

    let buffer = html!(
        div {
            (Markdown::from_events(events))
        }
    );

    println!("{}", buffer.into_string());
}

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.

Commit count: 0

cargo fmt