From 10082c20965be1507ee0f51dc4b6eff7fa3ed7de Mon Sep 17 00:00:00 2001 From: Trevor Bentley Date: Fri, 13 Jan 2023 17:26:38 +0100 Subject: [PATCH] fix site_assets to be a relative path --- src/generate.rs | 4 ++-- src/settings.rs | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/generate.rs b/src/generate.rs index aa12ff7..a2657ed 100644 --- a/src/generate.rs +++ b/src/generate.rs @@ -334,7 +334,7 @@ impl GitsyGenerator { local_ctx.insert("site_description", site_description); } local_ctx.insert("site_dir", &self.settings.outputs.output_dir()); - local_ctx.insert("site_assets", &self.settings.outputs.global_assets(None, None)); + local_ctx.insert("site_assets", &self.settings.outputs.to_relative(&self.settings.outputs.global_assets(None, None))); local_ctx.insert("site_generated_ts", &generated_dt.timestamp()); local_ctx.insert("site_generated_offset", &generated_dt.offset().local_minus_utc()); @@ -645,7 +645,7 @@ impl GitsyGenerator { global_ctx.insert("site_description", site_description); } global_ctx.insert("site_dir", &self.settings.outputs.output_dir()); - global_ctx.insert("site_assets", &self.settings.outputs.global_assets(None, None)); + global_ctx.insert("site_assets", &self.settings.outputs.to_relative(&self.settings.outputs.global_assets(None, None))); global_ctx.insert("site_generated_ts", &generated_dt.timestamp()); global_ctx.insert("site_generated_offset", &generated_dt.offset().local_minus_utc()); diff --git a/src/settings.rs b/src/settings.rs index 4e873ff..9008229 100644 --- a/src/settings.rs +++ b/src/settings.rs @@ -175,6 +175,15 @@ impl GitsySettingsOutputs { .to_str().expect(&format!("ERROR: unable to parse output path: {}", self.path.display())) .to_string() } + + pub fn to_relative(&self, path: &str) -> String { + let path_buf = PathBuf::from(path); + path_buf.strip_prefix(self.output_dir()) + .expect(&format!("ERROR: Unable to make path relative: {}", path)) + .to_str() + .expect(&format!("ERROR: Unable to make path relative: {}", path)) + .to_string() + } } #[derive(Clone, Deserialize, Default, Debug)]