pub fn parse_from_file(
path: &str,
output_path: &str,
) -> Result<(), Box<dyn Error>>Expand description
Parse Markdown from a file and write rendered HTML to another file using GFM.
In GFM mode, if Mermaid chart blocks are detected, a Mermaid runtime bootstrap script is appended so charts can render when opening the output file in a browser.
ยงExamples
use std::time::{SystemTime, UNIX_EPOCH};
use umark_lib::parse_from_file;
let suffix = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_nanos();
let mut input = std::env::temp_dir();
let mut output = std::env::temp_dir();
input.push(format!("umark_parse_input_{suffix}.md"));
output.push(format!("umark_parse_output_{suffix}.html"));
std::fs::write(&input, "# Title").unwrap();
parse_from_file(input.to_str().unwrap(), output.to_str().unwrap()).unwrap();
let html = std::fs::read_to_string(&output).unwrap();
assert!(html.contains("<h1>Title</h1>"));
let _ = std::fs::remove_file(&input);
let _ = std::fs::remove_file(&output);