diff options
Diffstat (limited to 'src/doc_reform/output/xmls.d')
-rw-r--r-- | src/doc_reform/output/xmls.d | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/doc_reform/output/xmls.d b/src/doc_reform/output/xmls.d index e68a22d..7a1a812 100644 --- a/src/doc_reform/output/xmls.d +++ b/src/doc_reform/output/xmls.d @@ -349,6 +349,18 @@ template outputXHTMLs() { rgx.inline_seg_link, "$1"); } + if (_xml_type == "seg" || _xml_type == "epub") { + if (auto m = _txt.match(rgx.inline_link_hash)) { + foreach (segname; doc_matters.xml.segnames) { + if (auto n = segname.match(m.captures[3])) { + _txt = _txt.replaceFirst( + rgx.inline_link_hash, + "┥$1┝┤$3" ~ _suffix ~ "├"); + break; + } + } + } + } _txt = (_txt) .replaceAll( rgx.inline_link_fn_suffix, @@ -591,7 +603,7 @@ template outputXHTMLs() { if (obj.metainfo.object_number.empty) { o = format(q"¶%s <div class="substance"> - <h%s class="%s">%s + <h%s class="%s">%s<a name="%s"></a> %s </h%s> </div>¶", @@ -599,6 +611,7 @@ template outputXHTMLs() { obj.metainfo.heading_lev_markup, obj.metainfo.is_a, tags, + obj.tags.segment_anchor_tag, _txt, obj.metainfo.heading_lev_markup, ); @@ -606,7 +619,7 @@ template outputXHTMLs() { o = format(q"¶%s <div class="substance"> <label class="ocn"><a href="#%s" class="lnkocn">%s</a></label> - <h%s class="%s" id="%s"><a name="%s"></a>%s + <h%s class="%s" id="%s"><a name="%s"></a>%s<a name="%s"></a> %s </h%s> </div>¶", @@ -618,6 +631,7 @@ template outputXHTMLs() { obj.metainfo.object_number, obj.metainfo.object_number, tags, + obj.tags.segment_anchor_tag, _txt, obj.metainfo.heading_lev_markup, ); |