diff options
author | Lars Wirzenius <liw@liw.fi> | 2022-09-03 11:39:03 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2022-09-03 11:39:03 +0300 |
commit | ac65d482c4bae8a98feb0d74e2cbe797b61c1d84 (patch) | |
tree | b6bfd55c918f7f79e6e3819a5692d844bfdd3766 /src/doc.rs | |
parent | 1898ff35ddbc717304c2afd1e25257013919b995 (diff) | |
download | subplot-ac65d482c4bae8a98feb0d74e2cbe797b61c1d84.tar.gz |
refactor: AST only parses Markdown, YAML is extracted outside it
Sponsored-by: author
Diffstat (limited to 'src/doc.rs')
-rw-r--r-- | src/doc.rs | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -20,7 +20,6 @@ use std::default::Default; use std::fmt::Debug; use std::ops::Deref; use std::path::{Path, PathBuf}; -use std::str::FromStr; use pandoc_ast::{MutVisitor, Pandoc}; @@ -208,7 +207,8 @@ impl Document { let filename = filename.to_path_buf(); let markdown = std::fs::read_to_string(&filename) .map_err(|err| SubplotError::ReadFile(filename.clone(), err))?; - let ast = ast::AbstractSyntaxTree::from_str(&markdown)?; + let (meta, markdown) = ast::extract_metadata(&markdown)?; + let ast = ast::AbstractSyntaxTree::new(meta, markdown); trace!("Parsed document OK"); Self::from_ast(basedir, vec![filename], ast.to_pandoc(), style, template) |