diff options
author | Lars Wirzenius <liw@liw.fi> | 2022-10-20 18:32:30 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2022-10-21 20:05:54 +0300 |
commit | fd854872ce86f9ae5d07ec59e598fe85a8607d5c (patch) | |
tree | 13cbc60820d24ec6f797d839f3e40ea92d67ed91 /src/metadata.rs | |
parent | bc6ceda21f2b616d6bfedd9b5e2136e3b7b47e8d (diff) | |
download | subplot-fd854872ce86f9ae5d07ec59e598fe85a8607d5c.tar.gz |
fix: look up markdown file relative to basedir of subplot
This allows running docgen on a subplot that isn't in the current directory.
Sponsored-by: author
Diffstat (limited to 'src/metadata.rs')
-rw-r--r-- | src/metadata.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/metadata.rs b/src/metadata.rs index dee0b50..261017a 100644 --- a/src/metadata.rs +++ b/src/metadata.rs @@ -12,6 +12,7 @@ use log::trace; /// Metadata of a document, as needed by Subplot. #[derive(Debug)] pub struct Metadata { + basedir: PathBuf, title: String, date: Option<String>, markdown_filename: PathBuf, @@ -74,6 +75,7 @@ impl Metadata { trace!("Loaded all metadata successfully"); Ok(Metadata { + basedir: basedir.as_ref().to_path_buf(), title, date, markdown_filename: meta.markdown().into(), @@ -95,6 +97,11 @@ impl Metadata { self.date.as_deref() } + /// Return base dir for all relative filenames. + pub fn basedir(&self) -> &Path { + &self.basedir + } + /// Return filename of the markdown file. pub fn markdown_filename(&self) -> &Path { &self.markdown_filename |