Crates.io | unimarkup-render |
lib.rs | unimarkup-render |
version | 0.4.0 |
source | src |
created_at | 2023-04-23 20:37:23.713265 |
updated_at | 2023-04-23 20:37:23.713265 |
description | Crate providing traits and types used for rendering Unimarkup markup. |
homepage | https://github.com/Unimarkup/unimarkup-rs |
repository | https://github.com/Unimarkup/unimarkup-rs |
max_upload_size | |
id | 846821 |
size | 8,089 |
This crate defines types and traits used in the inline and core crate to render Unimarkup elements to all supported output formats.
Therefore, all Unimarkup elements must implement the Render
trait defined in this crate.
Newly added Unimarkup elements must implement the Render
trait.
impl Render for NewElement {
fn render_html(&self) -> Result<Html, LogId> {
// implement rendering to HTML for this new element
}
}
To add a new output format, the Render
trait must be extended.
Note: This affects all Unimarkup elements implementing the Render
trait!
pub trait Render {
// ...
// previous output formats
// ...
/// Renders Unimarkup to the new output format
fn render_new_format(&self) => Result<NewFormat, LogId>;
}
The crate also provides syntax highlighting functionality in the highlight
module using the syntect crate.