From db9e1103e9d78f07a2fb1fe55253cd3aa035b4e5 Mon Sep 17 00:00:00 2001 From: Ben Bridle Date: Tue, 14 Jan 2025 16:47:38 +1300 Subject: Get the global HTML head from the config file The value of the configuration key `html.head` is inserted into the section of every generated HTML page. --- src/generate_html.rs | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) (limited to 'src/generate_html.rs') diff --git a/src/generate_html.rs b/src/generate_html.rs index 62a33b6..ab12c09 100644 --- a/src/generate_html.rs +++ b/src/generate_html.rs @@ -13,13 +13,13 @@ pub fn generate_html(document: &MarkdownDocument, page: &Page, website: &Website parent_url.push_str(&make_url_safe(segment)); parent_url.push('/'); } parent_url.pop(); + + let head = get_html_head(page, website); let head = head.trim(); let home_link = format!("{site_name}"); let parent_link = match page.parents.get(page.parents.len()-1) { Some(name) => format!("{name}"), None => String::new(), }; - - let head = get_html_head(document, page); let head = head.trim(); let table_of_contents = get_table_of_contents(page); let main = document_to_html(document, page, website); let main = main.trim(); @@ -50,18 +50,11 @@ pub fn generate_html(document: &MarkdownDocument, page: &Page, website: &Website } -pub fn get_html_head(document: &MarkdownDocument, page: &Page) -> String { - if let Some(Block::Fragment { language, content }) = document.blocks.first() { - if language == "embed-html-head" { - return content.to_string(); - } - } +pub fn get_html_head(page: &Page, website: &Website) -> String { let root = page.root(); - format!("\ - - - \ - ") + website.get_config("html.head") + .replace("href='/", &format!("href='{root}")) + .replace("src='/", &format!("src='{root}")) } -- cgit v1.2.3-70-g09d2