summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Bridle <ben@derelict.engineering>2025-01-14 16:47:38 +1300
committerBen Bridle <ben@derelict.engineering>2025-01-14 19:10:21 +1300
commitdb9e1103e9d78f07a2fb1fe55253cd3aa035b4e5 (patch)
treec59e15b242187ca49ec5e8da557e81231223c0c9
parentb0500b6ca074289119d12bd2ec6dcc3e8f6d0c05 (diff)
downloadtoaster-db9e1103e9d78f07a2fb1fe55253cd3aa035b4e5.zip
Get the global HTML head from the config file
The value of the configuration key `html.head` is inserted into the <head> section of every generated HTML page.
-rw-r--r--src/generate_html.rs19
1 files changed, 6 insertions, 13 deletions
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!("<a id='home' href='{root}index.html'>{site_name}</a>");
let parent_link = match page.parents.get(page.parents.len()-1) {
Some(name) => format!("<a id='parent' href='../{parent_url}.html'>{name}</a>"),
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!("\
-<link rel='stylesheet' type='text/css' media='screen' href='{root}static/screen.css'>
-<link rel='stylesheet' type='text/css' media='print' href='{root}static/print.css'>
-<script src='{root}static/render_math.js' defer></script> \
- ")
+ website.get_config("html.head")
+ .replace("href='/", &format!("href='{root}"))
+ .replace("src='/", &format!("src='{root}"))
}