From c7f8ba6ded76589bc6c69b6dc5cca02494900aac Mon Sep 17 00:00:00 2001 From: Luke Boswell Date: Fri, 17 Mar 2023 12:58:40 +1100 Subject: [PATCH] fix subfolder generation --- examples/static-site-gen/.gitignore | 1 + examples/static-site-gen/input/{ => subFolder}/apple.md | 3 ++- .../static-site-gen/input/{ => subFolder}/codeExample.roc | 0 examples/static-site-gen/platform/src/lib.rs | 6 ++++-- examples/static-site-gen/static-site.roc | 2 +- 5 files changed, 8 insertions(+), 4 deletions(-) rename examples/static-site-gen/input/{ => subFolder}/apple.md (99%) rename examples/static-site-gen/input/{ => subFolder}/codeExample.roc (100%) diff --git a/examples/static-site-gen/.gitignore b/examples/static-site-gen/.gitignore index a101b1e51e..fdb13757e3 100644 --- a/examples/static-site-gen/.gitignore +++ b/examples/static-site-gen/.gitignore @@ -1,3 +1,4 @@ /output/*.html +/output/subFolder /static-site /bin diff --git a/examples/static-site-gen/input/apple.md b/examples/static-site-gen/input/subFolder/apple.md similarity index 99% rename from examples/static-site-gen/input/apple.md rename to examples/static-site-gen/input/subFolder/apple.md index 2e114f083f..fd9901d820 100644 --- a/examples/static-site-gen/input/apple.md +++ b/examples/static-site-gen/input/subFolder/apple.md @@ -61,4 +61,5 @@ Herculei undae calcata inmeriti quercus ignes parabant iam. ```roc codeExample.roc -``` \ No newline at end of file +``` + diff --git a/examples/static-site-gen/input/codeExample.roc b/examples/static-site-gen/input/subFolder/codeExample.roc similarity index 100% rename from examples/static-site-gen/input/codeExample.roc rename to examples/static-site-gen/input/subFolder/codeExample.roc diff --git a/examples/static-site-gen/platform/src/lib.rs b/examples/static-site-gen/platform/src/lib.rs index f5b2f2a2f7..fb40bdef1b 100644 --- a/examples/static-site-gen/platform/src/lib.rs +++ b/examples/static-site-gen/platform/src/lib.rs @@ -226,7 +226,7 @@ fn process_file(input_dir: &Path, output_dir: &Path, input_file: &Path) -> Resul } pulldown_cmark::Event::End(pulldown_cmark::Tag::CodeBlock(_)) => { if in_code_block { - match replace_code_with_static_file(&code_to_highlight, input_dir) { + match replace_code_with_static_file(&code_to_highlight, input_file) { None => {} // Check if the code block is actually just a relative // path to a static file, if so replace the code with @@ -327,10 +327,12 @@ fn is_roc_code_block(cbk: &pulldown_cmark::CodeBlockKind) -> bool { } } -fn replace_code_with_static_file(code: &str, input_dir: &Path) -> Option { +fn replace_code_with_static_file(code: &str, input_file: &Path) -> Option { + let input_dir = input_file.parent()?; let trimmed_code = code.trim(); if trimmed_code.len() <= 255 && trimmed_code.contains(".") { let file_path = input_dir.join(trimmed_code); + let vec_u8 = fs::read(file_path).ok()?; String::from_utf8(vec_u8).ok() diff --git a/examples/static-site-gen/static-site.roc b/examples/static-site-gen/static-site.roc index cfc3a5e06b..e98827c39d 100644 --- a/examples/static-site-gen/static-site.roc +++ b/examples/static-site-gen/static-site.roc @@ -14,7 +14,7 @@ NavLink : { navLinks : List NavLink navLinks = [ - { url: "apple.html", title: "Exempli Gratia Pagina Pomi", text: "Apple" }, + { url: "subFolder/apple.html", title: "Exempli Gratia Pagina Pomi", text: "Apple" }, { url: "banana.html", title: "Exempli Gratia Pagina Musa", text: "Banana" }, { url: "cherry.html", title: "Exempli Pagina Cerasus", text: "Cherry" }, ]