diff options
author | Ralph Amissah <ralph.amissah@gmail.com> | 2020-04-24 23:36:46 -0400 |
---|---|---|
committer | Ralph Amissah <ralph.amissah@gmail.com> | 2020-05-20 11:27:26 -0400 |
commit | ef2135e4fe16604b40956a2c345cdc0ae467b65c (patch) | |
tree | c14dcacf4608d23eb5a7afd622c1e1af4b648ab6 /src/doc_reform/io_out/sqlite.d | |
parent | footnote/endnote fix (diff) |
xmls, sqlite more with footnotes/endnotes
Diffstat (limited to 'src/doc_reform/io_out/sqlite.d')
-rw-r--r-- | src/doc_reform/io_out/sqlite.d | 64 |
1 files changed, 11 insertions, 53 deletions
diff --git a/src/doc_reform/io_out/sqlite.d b/src/doc_reform/io_out/sqlite.d index 1b010d2..d4fac70 100644 --- a/src/doc_reform/io_out/sqlite.d +++ b/src/doc_reform/io_out/sqlite.d @@ -203,15 +203,6 @@ template SQLiteFormatAndLoadObject() { string _notes; string _urls; string _txt = _html_font_face(_html_special_characters(obj.text)); - if (_txt.matchFirst(rgx.inline_notes_al_gen)) { - foreach (m; _txt.matchAll(rgx.inline_notes_al_gen_text)) { - _notes ~= "\n" ~ m["text"]; - } - _txt = _txt.replaceAll(rgx.inline_notes_al_gen_ref, "<sup>$1</sup> "); - } - if (_notes.length > 0) { - _txt ~= _notes; - } { /+ debug +/ if (doc_matters.opt.action.debug_do && doc_matters.opt.action.verbose) { @@ -386,11 +377,17 @@ template SQLiteFormatAndLoadObject() { string _txt, ) { if (obj.has.inline_notes_reg) { - // _txt = font_face(_txt); - _txt = _txt.replaceAll( - rgx.inline_notes_al_regular_number_note, - ("<a href=\"#note_$1\"><note id=\"noteref_$1\"> <sup>$1</sup> </note></a>") - ); + string[] _endnotes; + foreach(m; _txt.matchAll(rgx.inline_notes_al_regular_number_note)) { + _endnotes ~= "<p class=\"endnote\">" + ~ "<sup>" ~ m.captures["num"] ~ ".</sup>" + ~ m.captures["note"] + ~ "</p>"; + } + _txt = replaceAll!(m => + (" " ~ "<sup>" ~ m["num"] ~ "</sup>")) + (_txt, rgx.inline_notes_al_regular_number_note) + ~ _endnotes.join("\n"); } debug(markup_endnotes) { if (_txt.match(rgx.inline_notes_al_regular_number_note)) { @@ -404,45 +401,6 @@ template SQLiteFormatAndLoadObject() { } return _txt; } - Tuple!(string, string[]) inline_notes_seg(M,O)( - M doc_matters, - const O obj, - string _txt, - ) { - string[] _endnotes; - if (obj.has.inline_notes_reg) { - /+ need markup for text, and separated footnote +/ - foreach(m; _txt.matchAll(rgx.inline_notes_al_regular_number_note)) { - _endnotes ~= format( - "%s%s%s%s\n %s%s%s%s%s\n %s\n%s", - "<p class=\"endnote\">", - "<a href=\"#noteref_", - m.captures[1], - "\">", - "<note id=\"note_", - m.captures[1], - "\"> <sup>", - m.captures[1], - ".</sup></note></a>", - m.captures[2], - "</p>" - ); - } - _txt = _txt.replaceAll( - rgx.inline_notes_al_regular_number_note, - ("<a href=\"#note_$1\"><note id=\"noteref_$1\"> <sup>$1</sup> </note></a>") - ); - } else if (_txt.match(rgx.inline_notes_al_regular_number_note)) { - debug(markup) { - writeln(__LINE__, " endnote: ", obj.metainfo.is_a, ": ", obj.text); - } - } - Tuple!(string, string[]) t = tuple( - _txt, - _endnotes, - ); - return t; - } string xml_type="seg"; /+ set html document type to be linked to here (seg|scroll) +/ string inline_markup(M,O)( M doc_matters, |