aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sdp/output/html.d
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2018-05-04 21:22:39 -0400
committerRalph Amissah <ralph@amissah.com>2019-04-10 15:14:15 -0400
commit48ba380760b306077afa7a156a21d3ff98d26775 (patch)
tree3385a7efddac04cb52fb08a93b245c89e958e83d /src/sdp/output/html.d
parentlink url matching (diff)
html & epub images in place (dimensions not & other issues)
Diffstat (limited to 'src/sdp/output/html.d')
-rw-r--r--src/sdp/output/html.d51
1 files changed, 37 insertions, 14 deletions
diff --git a/src/sdp/output/html.d b/src/sdp/output/html.d
index 35e3027..3db534b 100644
--- a/src/sdp/output/html.d
+++ b/src/sdp/output/html.d
@@ -225,7 +225,7 @@ template outputHTML() {
top_level_headings[3] = "";
goto default;
default:
- auto t = xhtml_format.heading_seg(obj, _txt, suffix);
+ auto t = xhtml_format.heading_seg(obj, _txt, suffix, "seg");
top_level_headings[obj.heading_lev_markup] = t[0];
break;
}
@@ -240,13 +240,13 @@ template outputHTML() {
// writeln(top_level_heading);
doc_html[segment_filename] ~= top_level_heading;
}
- auto t = xhtml_format.heading_seg(obj, _txt, suffix);
+ auto t = xhtml_format.heading_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html[segment_filename] ~= xhtml_format.lev4_heading_subtoc(obj);
doc_html_endnotes[segment_filename] ~= t[1];
break;
case 5: .. case 7:
- auto t = xhtml_format.heading_seg(obj, _txt, suffix);
+ auto t = xhtml_format.heading_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
@@ -270,7 +270,7 @@ template outputHTML() {
case "para":
switch (obj.is_a) {
case "toc":
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
break;
default:
@@ -292,7 +292,7 @@ template outputHTML() {
case "para":
switch (obj.is_a) {
case "para":
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
@@ -306,24 +306,24 @@ template outputHTML() {
case "block":
switch (obj.is_a) {
case "quote":
- auto t = xhtml_format.quote_seg(obj, _txt, suffix);
+ auto t = xhtml_format.quote_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "group":
- auto t = xhtml_format.group_seg(obj, _txt, suffix);
+ auto t = xhtml_format.group_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "block":
- auto t = xhtml_format.block_seg(obj, _txt, suffix);
+ auto t = xhtml_format.block_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "poem":
break;
case "verse":
- auto t = xhtml_format.verse_seg(obj, _txt, suffix);
+ auto t = xhtml_format.verse_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0].to!string;
doc_html_endnotes[segment_filename] ~= t[1];
break;
@@ -354,26 +354,26 @@ template outputHTML() {
case "para":
switch (obj.is_a) {
case "endnote": assert(part == "endnotes");
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0];
break;
case "glossary": assert(part == "glossary");
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0];
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "bibliography": assert(part == "bibliography");
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0];
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "bookindex": assert(part == "bookindex_seg");
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0];
doc_html_endnotes[segment_filename] ~= t[1];
break;
case "blurb": assert(part == "blurb");
- auto t = xhtml_format.para_seg(obj, _txt, suffix);
+ auto t = xhtml_format.para_seg(obj, _txt, suffix, "seg");
doc_html[segment_filename] ~= t[0];
doc_html_endnotes[segment_filename] ~= t[1];
break;
@@ -455,4 +455,27 @@ template outputHTML() {
// Handle error
}
}
+ void images_cp(M)(
+ auto return ref M doc_matters,
+ ) {
+ { /+ (copy html images) +/
+
+ auto pth_html = SiSUpathsHTML!()(doc_matters.output_path, doc_matters.src.language);
+ if (!exists(pth_html.image)) {
+ pth_html.image.mkdirRecurse;
+ }
+ foreach (image; doc_matters.srcs.image_list) {
+ auto fn_src_in = doc_matters.src_path_info.src_image_root_with_path ~ "/" ~ image;
+ auto fn_src_out = pth_html.image ~ "/" ~ image;
+ debug(images_html) {
+ writeln(fn_src_in, " -> ", fn_src_out);
+ }
+ if (exists(fn_src_in)) {
+ fn_src_in.copy(fn_src_out);
+ } else {
+ writeln("WARNING image not found: ", fn_src_in);
+ }
+ }
+ }
+ }
}