summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSøren Mortensen <soren@neros.dev>2020-08-31 10:00:03 +0100
committerSøren Mortensen <soren@neros.dev>2020-08-31 10:00:03 +0100
commit2fb489137bc6769be5b3ab195937c5d00f51357e (patch)
treec2cb10ff9cd4292038f3b3cf4d5e4954ededa45a /src
parentf6768b816ce371cc3759e06b001f1365c83cbd2d (diff)
Wrap draft chapter titles in a <div>
Fixes the problem of a missing space before the title of draft chapters, due to the title not being wrapped in an `<a></a>`.
Diffstat (limited to 'src')
-rw-r--r--src/renderer/html_handlebars/helpers/toc.rs50
1 files changed, 26 insertions, 24 deletions
diff --git a/src/renderer/html_handlebars/helpers/toc.rs b/src/renderer/html_handlebars/helpers/toc.rs
index 47eda596..7a5d8a28 100644
--- a/src/renderer/html_handlebars/helpers/toc.rs
+++ b/src/renderer/html_handlebars/helpers/toc.rs
@@ -108,32 +108,32 @@ impl HelperDef for RenderToc {
}
// Link
- let path_exists = if let Some(path) = item.get("path") {
- if !path.is_empty() {
- out.write("<a href=\"")?;
-
- let tmp = Path::new(item.get("path").expect("Error: path should be Some(_)"))
- .with_extension("html")
- .to_str()
- .unwrap()
- // Hack for windows who tends to use `\` as separator instead of `/`
- .replace("\\", "/");
-
- // Add link
- out.write(&utils::fs::path_to_root(&current_path))?;
- out.write(&tmp)?;
- out.write("\"")?;
-
- if path == &current_path {
- out.write(" class=\"active\"")?;
- }
-
- out.write(">")?;
- true
- } else {
- false
+ let path_exists = if let Some(path) =
+ item.get("path")
+ .and_then(|p| if p.is_empty() { None } else { Some(p) })
+ {
+ out.write("<a href=\"")?;
+
+ let tmp = Path::new(item.get("path").expect("Error: path should be Some(_)"))
+ .with_extension("html")
+ .to_str()
+ .unwrap()
+ // Hack for windows who tends to use `\` as separator instead of `/`
+ .replace("\\", "/");
+
+ // Add link
+ out.write(&utils::fs::path_to_root(&current_path))?;
+ out.write(&tmp)?;
+ out.write("\"")?;
+
+ if path == &current_path {
+ out.write(" class=\"active\"")?;
}
+
+ out.write(">")?;
+ true
} else {
+ out.write("<div>")?;
false
};
@@ -165,6 +165,8 @@ impl HelperDef for RenderToc {
if path_exists {
out.write("</a>")?;
+ } else {
+ out.write("</div>")?;
}
// Render expand/collapse toggle