From 829b4e3cf1e59732d0166cbd24d31c93c4095977 Mon Sep 17 00:00:00 2001 From: radhitya Date: Sat, 20 Jun 2026 17:52:48 +0700 Subject: save output to public/ --- .cargo/config.toml | 13 +++++++++++++ .gitignore | 4 ++++ src/page.rs | 10 +++++++++- 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 .cargo/config.toml create mode 100644 .gitignore diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 0000000..f6e3e59 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,13 @@ +[profile.release] +jobs = 2 +opt-level = "s" +lto = "thin" +codegen-units = 1 +panic = "abort" +debug = false + +[build] +rustflags = [ + "-C", "target-cpu=native", + "-C", "target-feature=+aes", +] diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b781b2f --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +/public +/content +todo.md +/target diff --git a/src/page.rs b/src/page.rs index c81887d..2ee065a 100644 --- a/src/page.rs +++ b/src/page.rs @@ -63,7 +63,7 @@ pub fn parse_page(source_path: &PathBuf) -> anyhow::Result { let slug = meta.title.to_lowercase().replace(' ', "-"); let output_path = PathBuf::from("public").join(&slug).join("index.html"); - + save_file(&output_path, &html)?; Ok (Page { meta, source_path: source_path.clone(), @@ -85,3 +85,11 @@ pub fn render_markdown(input: &str) -> String { html::push_html(&mut out, parser); out } + +pub fn save_file(output_path: &PathBuf, content: &str) -> anyhow::Result<()> { + if let Some(public) = output_path.parent() { + fs::create_dir_all(public)?; + } + fs::write(output_path, content)?; + Ok(()) +} -- cgit v1.2.3