aboutsummaryrefslogtreecommitdiffhomepage
path: root/org
diff options
context:
space:
mode:
Diffstat (limited to 'org')
-rw-r--r--org/default_paths.org2
-rw-r--r--org/default_regex.org4
-rw-r--r--org/meta_abstraction.org22
-rw-r--r--org/output_sqlite.org52
-rw-r--r--org/output_xmls.org186
5 files changed, 133 insertions, 133 deletions
diff --git a/org/default_paths.org b/org/default_paths.org
index 5ba5a43..26e28f5 100644
--- a/org/default_paths.org
+++ b/org/default_paths.org
@@ -1034,7 +1034,7 @@ template DocReformPathsUrl() {
return _doc_root;
}
string html_seg(string html_segname, string obj_id) { // TODO bespoke for sqlite
- string _url = format(q"┋%s/%s/html/%s/%s.html#%s┋",
+ string _url = format(q"┃%s/%s/html/%s/%s.html#%s┃",
doc_root,
doc_matters.src.language,
doc_matters.src.filename_base,
diff --git a/org/default_regex.org b/org/default_regex.org
index 849b9b0..f4c2952 100644
--- a/org/default_regex.org
+++ b/org/default_regex.org
@@ -537,7 +537,7 @@ static inline_text_and_note_al_ = ctRegex!(`(.+?(?:【[*+]
static inline_image = ctRegex!(`(?P<pre>┥)☼(?P<imginf>(?P<img>[a-zA-Z0-9._-]+?\.(?:jpg|gif|png)),w(?P<width>\d+)h(?P<height>\d+))\s*(?P<post>.*?┝┤.*?├)`, "mg");
static inline_image_without_dimensions = ctRegex!(`(?P<pre>┥)☼(?P<imginf>(?P<img>[a-zA-Z0-9._-]+?\.(?:jpg|gif|png)),w(?P<width>0)h(?P<height>0))\s*(?P<post>.*?┝┤.*?├)`, "mg");
static inline_image_info = ctRegex!(`☼?(?P<img>[a-zA-Z0-9._-]+?\.(?:jpg|gif|png)),w(?P<width>\d+)h(?P<height>\d+)`, "mg");
-static inline_link_anchor = ctRegex!(`┋(?P<anchor>\S+?)┋`, "mg"); // TODO *~text_link_anchor
+static inline_link_anchor = ctRegex!(`┃(?P<anchor>\S+?)┃`, "mg"); // TODO *~text_link_anchor
static inline_link_ = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>.+?)├`, "mg");
static inline_link = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>\S+?)├`, "mg");
static inline_link_empty = ctRegex!(`┥(?P<text>.+?)┝┤├`, "mg");
@@ -555,7 +555,7 @@ static inline_link_fn_suffix = ctRegex!(`¤(.+?)(\.fnSu
static inline_seg_link = ctRegex!(`(¤)(?:.+?)\.fnSuffix`, "mg");
static mark_internal_site_lnk = ctRegex!(`¤`, "mg");
static quotation_mark_sql_insert_delimiter = ctRegex!("[']", "mg");
-static quotation_mark_various = ctRegex!(q"┋['‘’“”"`´¨]┋", "mg");
+static quotation_mark_various = ctRegex!(q"┃['‘’“”"`´¨]┃", "mg");
#+END_SRC
*** inline markup font face mod :inline:font:face:
diff --git a/org/meta_abstraction.org b/org/meta_abstraction.org
index 87051c4..890519e 100644
--- a/org/meta_abstraction.org
+++ b/org/meta_abstraction.org
@@ -2356,7 +2356,7 @@ auto _image_dimensions(O,M)(O obj, M manifest_matter) {
}
obj.text = obj.text.replaceFirst(
rgx.inline_image_without_dimensions,
- format(q"┋%s☼%s,w%sh%s %s┋",
+ format(q"┃%s☼%s,w%sh%s %s┃",
"$1",
"$3",
_w.to!string,
@@ -2395,7 +2395,7 @@ auto _links(O)(O obj) {
obj.stow.link ~= obj.text.matchFirst(rgx.inline_link_stow_uri)[2];
obj.text = obj.text.replaceFirst(
rgx.inline_link_stow_uri,
- format(q"┋┥%s┝┤%s├┋", "$1", i)
+ format(q"┃┥%s┝┤%s├┃", "$1", i)
);
}
}
@@ -5076,10 +5076,10 @@ auto font_faces_line(T)(
static auto mkup = InlineMarkup();
if (textline.match(rgx.inline_faces_line)) {
textline = textline
- .replaceFirst(rgx.inline_emphasis_line, format(q"┋%s%s%s%s%s%s┋", mkup.emph, mkup.ff_o, "$1", mkup.ff_c, mkup.emph, "$2"))
- .replaceFirst(rgx.inline_bold_line, format(q"┋%s%s%s%s%s%s┋", mkup.bold, mkup.ff_o, "$1", mkup.ff_c, mkup.bold, "$2"))
- .replaceFirst(rgx.inline_underscore_line, format(q"┋%s%s%s%s%s%s┋", mkup.underscore, mkup.ff_o, "$1", mkup.ff_c, mkup.underscore, "$2"))
- .replaceFirst(rgx.inline_italics_line, format(q"┋%s%s%s%s%s%s┋", mkup.italic, mkup.ff_o, "$1", mkup.ff_c, mkup.italic, "$2"));
+ .replaceFirst(rgx.inline_emphasis_line, format(q"┃%s%s%s%s%s%s┃", mkup.emph, mkup.ff_o, "$1", mkup.ff_c, mkup.emph, "$2"))
+ .replaceFirst(rgx.inline_bold_line, format(q"┃%s%s%s%s%s%s┃", mkup.bold, mkup.ff_o, "$1", mkup.ff_c, mkup.bold, "$2"))
+ .replaceFirst(rgx.inline_underscore_line, format(q"┃%s%s%s%s%s%s┃", mkup.underscore, mkup.ff_o, "$1", mkup.ff_c, mkup.underscore, "$2"))
+ .replaceFirst(rgx.inline_italics_line, format(q"┃%s%s%s%s%s%s┃", mkup.italic, mkup.ff_o, "$1", mkup.ff_c, mkup.italic, "$2"));
}
return textline;
}
@@ -5551,7 +5551,7 @@ static struct ObjInlineMarkupMunge {
}
if (auto m = obj_txt_in.match(rgx.para_inline_link_anchor)) {
obj_txt_in = obj_txt_in
- .replaceAll(rgx.para_inline_link_anchor, "┋$1┋");
+ .replaceAll(rgx.para_inline_link_anchor, "┃$1┃");
}
auto ftn = footnotes_endnotes_markup_and_number_or_stars(obj_txt_in, reset_note_numbers);
obj_txt_out = ftn[0];
@@ -6134,7 +6134,7 @@ private:
heading_number_auto_composite
= (conf_make_meta.make.auto_num_depth.to!uint == 3
&& auto_heading_numbering[3])
- ? (format(q"┋%s.%s.%s.%s┋",
+ ? (format(q"┃%s.%s.%s.%s┃",
heading_num[0].to!string,
heading_num[1].to!string,
heading_num[2].to!string,
@@ -6146,7 +6146,7 @@ private:
= ((conf_make_meta.make.auto_num_depth.to!uint >= 2)
&& (conf_make_meta.make.auto_num_depth.to!uint <= 3)
&& auto_heading_numbering[2])
- ? (format(q"┋%s.%s.%s┋",
+ ? (format(q"┃%s.%s.%s┃",
heading_num[0].to!string,
heading_num[1].to!string,
heading_num[2].to!string
@@ -6157,7 +6157,7 @@ private:
= ((conf_make_meta.make.auto_num_depth.to!uint >= 1)
&& (conf_make_meta.make.auto_num_depth.to!uint <= 3)
&& auto_heading_numbering[1])
- ? (format(q"┋%s.%s┋",
+ ? (format(q"┃%s.%s┃",
heading_num[0].to!string,
heading_num[1].to!string
))
@@ -6169,7 +6169,7 @@ private:
= ((conf_make_meta.make.auto_num_depth.to!uint >= 0)
&& (conf_make_meta.make.auto_num_depth.to!uint <= 3)
&& auto_heading_numbering[0])
- ? (format(q"┋%s┋",
+ ? (format(q"┃%s┃",
heading_num[0].to!string
))
: "";
diff --git a/org/output_sqlite.org b/org/output_sqlite.org
index 5faf244..6894c56 100644
--- a/org/output_sqlite.org
+++ b/org/output_sqlite.org
@@ -159,13 +159,13 @@ template SQLiteFormatAndLoadObject() {
template SQLiteTablesReCreate() {
string SQLiteTablesReCreate()() {
string _sql_instruct;
- _sql_instruct = format(q"┋
+ _sql_instruct = format(q"┃
<<sqlite_statement_drop_existing_index>>
<<sqlite_statement_drop_existing_tables>>
<<sqlite_statement_create_table_metadata_and_src_txt>>
<<sqlite_statement_create_table_objects>>
<<sqlite_statement_create_index>>
- ┋",);
+ ┃",);
return _sql_instruct;
}
}
@@ -225,13 +225,13 @@ template SQLiteTablesCreate() {
template SQLiteTablesReCreate() {
string SQLiteTablesReCreate()() {
string _sql_instruct;
- _sql_instruct = format(q"┋
+ _sql_instruct = format(q"┃
<<sqlite_statement_drop_existing_index>>
<<sqlite_statement_drop_existing_tables>>
<<sqlite_statement_create_table_metadata_and_src_txt>>
<<sqlite_statement_create_table_objects>>
<<sqlite_statement_create_index>>
- ┋",);
+ ┃",);
return _sql_instruct;
}
}
@@ -740,9 +740,9 @@ auto html_heading(M,O)(
assert(obj.metainfo.is_a == "heading");
string _txt = munge_html(doc_matters, obj);
_txt = inline_markup(doc_matters, obj, _txt);
- string o = format(q"┋<p class="%s"><b>
+ string o = format(q"┃<p class="%s"><b>
%s
- </b></p>┋",
+ </b></p>┃",
obj.metainfo.is_a,
_txt,
);
@@ -760,9 +760,9 @@ auto html_heading(M,O)(
) {
string o;
string _txt = munge_html(doc_matters, obj);
- o = format(q"┋<h%s class="%s">
+ o = format(q"┃<h%s class="%s">
%s
- </h%s>┋",
+ </h%s>┃",
obj.metainfo.heading_lev_markup,
obj.metainfo.is_a,
_txt,
@@ -787,9 +787,9 @@ auto html_para(M,O)(
string _txt = munge_html(doc_matters, obj);
_txt = (obj.attrib.bullet) ? ("●&#160;&#160;" ~ _txt) : _txt;
_txt = inline_markup(doc_matters, obj, _txt);
- string o = format(q"┋<p class="%s" indent="h%si%s">
+ string o = format(q"┃<p class="%s" indent="h%si%s">
%s
- </p>┋",
+ </p>┃",
obj.metainfo.is_a,
obj.attrib.indent_hang,
obj.attrib.indent_base,
@@ -812,9 +812,9 @@ auto html_quote(M,O)(
assert(obj.metainfo.is_of_type == "block");
assert(obj.metainfo.is_a == "quote");
string _txt = munge_html(doc_matters, obj);
- string o = format(q"┋<p class="%s">
+ string o = format(q"┃<p class="%s">
%s
- </p>┋",
+ </p>┃",
obj.metainfo.is_a,
_txt
);
@@ -835,9 +835,9 @@ auto html_group(M,O)(
assert(obj.metainfo.is_of_type == "block");
assert(obj.metainfo.is_a == "group");
string _txt = munge_html(doc_matters, obj);
- string o = format(q"┋<p class="%s">
+ string o = format(q"┃<p class="%s">
%s
- </p>┋",
+ </p>┃",
obj.metainfo.is_a,
_txt
);
@@ -858,8 +858,8 @@ auto html_block(M,O)(
assert(obj.metainfo.is_of_type == "block");
assert(obj.metainfo.is_a == "block");
string _txt = munge_html(doc_matters, obj);
- string o = format(q"┋
- <p class="%s">%s</p>┋",
+ string o = format(q"┃
+ <p class="%s">%s</p>┃",
obj.metainfo.is_a,
_txt.stripRight
);
@@ -880,7 +880,7 @@ auto html_verse(M,O)(
assert(obj.metainfo.is_of_type == "block");
assert(obj.metainfo.is_a == "verse");
string _txt = munge_html(doc_matters, obj);
- string o = format(q"┋<p class="%s">%s</p>┋",
+ string o = format(q"┃<p class="%s">%s</p>┃",
obj.metainfo.is_a,
_txt
);
@@ -900,7 +900,7 @@ auto html_code(O)(
assert(obj.metainfo.is_of_type == "block");
assert(obj.metainfo.is_a == "code");
string _txt = html_special_characters_code(obj.text);
- string o = format(q"┋<p class="%s">%s</p>┋",
+ string o = format(q"┃<p class="%s">%s</p>┃",
obj.metainfo.is_a,
_txt
);
@@ -965,12 +965,12 @@ auto html_table(M,O)(
auto t = _tablarize(obj, _txt);
_txt = t[0];
string _note = t[1];
- string o = format(q"┋<p class="%s">
+ string o = format(q"┃<p class="%s">
<table summary="normal text css" width="95%%" border="0" bgcolor="white" cellpadding="2" align="center">
%s
</table>
%s
- </p>┋",
+ </p>┃",
obj.metainfo.is_a,
_txt,
_note
@@ -1604,7 +1604,7 @@ CREATE INDEX idx_topics ON metadata_and_text(classify_topic_register);
#+name: sqlite_formatted_delete
#+BEGIN_SRC d
string _uid = doc_matters.src.doc_uid;
-string _delete_uid = format(q"┋
+string _delete_uid = format(q"┃
#+END_SRC
***** DELETE FROM ... WHERE
@@ -1621,7 +1621,7 @@ WHERE uid_metadata_and_text = '%s';
#+name: sqlite_formatted_delete
#+BEGIN_SRC d
-┋",
+┃",
_uid,
_uid,
);
@@ -1641,7 +1641,7 @@ either:
#+name: sqlite_formatted_insertions_doc_objects
#+BEGIN_SRC d
-string _insert_doc_objects_row = format(q"┋
+string _insert_doc_objects_row = format(q"┃
#+END_SRC
***** INSERT INTO
@@ -1682,7 +1682,7 @@ string _insert_doc_objects_row = format(q"┋
#+name: sqlite_formatted_insertions_doc_objects
#+BEGIN_SRC d
-┋",
+┃",
_uid,
obj.metainfo.ocn,
obj.metainfo.identifier,
@@ -1701,7 +1701,7 @@ string _insert_doc_objects_row = format(q"┋
#+name: sqlite_formatted_insertions_doc_matters_metadata
#+BEGIN_SRC d
string _uid = SQLinsertDelimiter!()(doc_matters.src.doc_uid);
-string _insert_metadata = format(q"┋
+string _insert_metadata = format(q"┃
#+END_SRC
***** INSERT INTO
@@ -1820,7 +1820,7 @@ string _insert_metadata = format(q"┋
#+name: sqlite_formatted_insertions_doc_matters_metadata
#+BEGIN_SRC d
-┋",
+┃",
_uid,
SQLinsertDelimiter!()(doc_matters.src.filename),
SQLinsertDelimiter!()(doc_matters.src.docname_composite_unique_per_src_doc),
diff --git a/org/output_xmls.org b/org/output_xmls.org
index 19d4f1e..faa273f 100644
--- a/org/output_xmls.org
+++ b/org/output_xmls.org
@@ -168,7 +168,7 @@ auto header_metadata(M)(
) {
string _publisher="Publisher"; // TODO
string o;
- o = format(q"┋<!-- DocReform header metadata -->
+ o = format(q"┃<!-- DocReform header metadata -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="dc.title" content="%s" />
<meta name="dc.author" content="%s" />
@@ -183,7 +183,7 @@ auto header_metadata(M)(
<meta name="dc.rights" content="%s" />
<meta name="generator" content="%s" />
<link rel="generator" href="%s" />
-<!-- DocReform header metadata -->┋",
+<!-- DocReform header metadata -->┃",
doc_matters.conf_make_meta.meta.title_full,
doc_matters.conf_make_meta.meta.creator_author,
_publisher,
@@ -223,9 +223,9 @@ auto site_info_button(M)(
_locations = "<p class=\"tiny_left\"><a href=\"http://www.doc-reform.org\">doc-reform</a></p>\n<p class=\"tiny_left\"><a href=\"http://git.sisudoc.org/software/doc-reform/\">sources / git</a></p>\n<p class=\"tiny_left\"><a href=\"http://www.sisudoc.org\">www.sisudoc.org</a></p>";
}
string o;
- o = format(q"┋<div class="flex-menu-option">
+ o = format(q"┃<div class="flex-menu-option">
%s
- </div>┋",
+ </div>┃",
_locations,
);
return o;
@@ -244,7 +244,7 @@ auto inline_search_form(M)(
string o;
string _form;
if (doc_matters.opt.action.workon) {
- _form = format(q"┋
+ _form = format(q"┃
<a name="search"></a>
<form method="get" action="%s" target="_top">
<font size="2">
@@ -256,17 +256,17 @@ auto inline_search_form(M)(
<input type="submit" name="search" value="search doc" />
<input type="submit" name="search" value="search db" />
</font></form>
- ┋",
+ ┃",
_action,
_db,
);
} else {
- _form = format(q"┋%s┋",
+ _form = format(q"┃%s┃",
"",
);
}
- o = format(q"┋<div class="flex-menu-option">%s
- </div>┋",
+ o = format(q"┃<div class="flex-menu-option">%s
+ </div>┃",
_form,
);
return o;
@@ -283,17 +283,17 @@ auto html_head(M)(
) {
string _manifest = "";
if (doc_matters.opt.action.workon) {
- _manifest = format(q"┋
+ _manifest = format(q"┃
<a href="../../manifest/sisu.en.html" target="_top">
<font face="verdana, arial, georgia, tahoma, sans-serif, helvetica, times, roman" size="2">
[&nbsp;document&nbsp;manifest&nbsp;]
</font>
</a>
- ┋",
+ ┃",
);
}
string o;
- o = format(q"┋<!DOCTYPE html>
+ o = format(q"┃<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
@@ -315,7 +315,7 @@ if (doc_matters.opt.action.workon) {
<div class="flex-menu-option">
%s
</div>
- %s%s┋",
+ %s%s┃",
doc_matters.conf_make_meta.meta.title_full,
(doc_matters.conf_make_meta.meta.creator_author.empty) ? ""
: ", " ~ doc_matters.conf_make_meta.meta.creator_author,
@@ -341,27 +341,27 @@ if (doc_matters.opt.action.workon) {
auto epub3_seg_head(M)(
M doc_matters,
) {
- string html_base = format(q"┋<!DOCTYPE html>
-<html>┋",
+ string html_base = format(q"┃<!DOCTYPE html>
+<html>┃",
);
- string html_simple = format(q"┋<!DOCTYPE html>
+ string html_simple = format(q"┃<!DOCTYPE html>
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:epub="http://www.idpf.org/2007/ops"
- lang="%s" xml:lang="%s">┋",
+ lang="%s" xml:lang="%s">┃",
doc_matters.src.language,
doc_matters.src.language,
);
- string html_strict = format(q"┋<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ string html_strict = format(q"┃<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:epub="http://www.idpf.org/2007/ops"
- lang="%s" xml:lang="%s">┋",
+ lang="%s" xml:lang="%s">┃",
doc_matters.src.language,
doc_matters.src.language,
);
string o;
- o = format(q"┋%s
+ o = format(q"┃%s
<head>
<title>
%s%s
@@ -384,7 +384,7 @@ auto epub3_seg_head(M)(
<link rel="stylesheet" href="css/epub.css" type="text/css" id="main-css" />
</head>
<body lang="%s">
-<a name="top" id="top"></a>┋",
+<a name="top" id="top"></a>┃",
html_simple,
doc_matters.conf_make_meta.meta.title_full,
(doc_matters.conf_make_meta.meta.creator_author.empty) ? ""
@@ -414,11 +414,11 @@ auto epub3_seg_head(M)(
#+BEGIN_SRC d
auto tail() {
string o;
- o = format(q"┋
+ o = format(q"┃
<a name="bottom" id="bottom"></a>
<a name="end" id="end"></a>
</body>
-</html>┋");
+</html>┃");
return o;
}
#+END_SRC
@@ -682,10 +682,10 @@ string lev4_heading_subtoc(O,M)(
text = font_face(text);
auto link = m.captures[3].to!string;
lev4_subtoc ~= subtoc.replaceFirst(rgx.inline_link_subtoc,
- format(q"┋ <p class="minitoc" indent="h%si%s">
+ format(q"┃ <p class="minitoc" indent="h%si%s">
۰ <a href="%s">%s</a>
</p>
-┋",
+┃",
indent,
indent,
link,
@@ -711,42 +711,42 @@ auto nav_pre_next_svg(O,M)(
toc = "";
prev = "";
} else {
- toc = format(q"┋<a href="toc.html" target="_top">
+ toc = format(q"┃<a href="toc.html" target="_top">
<div class="toc-button menu">
<svg viewbox="0 0 100 100">
<path d="M4,10h24c1.104,0,2-0.896,2-2s-0.896-2-2-2H4C2.896,6,2,6.896,2,8S2.896,10,4,10z M28,14H4c-1.104,0-2,0.896-2,2 s0.896,2,2,2h24c1.104,0,2-0.896,2-2S29.104,14,28,14z M28,22H4c-1.104,0-2,0.896-2,2s0.896,2,2,2h24c1.104,0,2-0.896,2-2 S29.104,22,28,22z"/>
</svg>
</div>
- </a>┋",
+ </a>┃",
);
}
if (obj.tags.segname_prev == "") {
prev = "";
} else {
- prev = format(q"┋<a href="%s.html" target="_top">
+ prev = format(q"┃<a href="%s.html" target="_top">
<div class="prev-next-button previous">
<svg viewbox="0 0 100 100">
<path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z" transform=" translate(15,0)">
</svg>
</div>
- </a>┋",
+ </a>┃",
obj.tags.segname_prev,
);
}
if (obj.tags.segname_next == "") {
next = "";
} else {
- next = format(q"┋<a href="%s.html" target="_top">
+ next = format(q"┃<a href="%s.html" target="_top">
<div class="prev-next-button next">
<svg viewbox="0 0 100 100">
<path class="arrow" d="M 50,0 L 60,10 L 20,50 L 60,90 L 50,100 L 0,50 Z "transform="translate(85,100) rotate(180) ">
</svg>
</div>
- </a>┋",
+ </a>┃",
obj.tags.segname_next,
);
}
- string _toc_pre_next = format(q"┋ <div class="flex-menu-option">
+ string _toc_pre_next = format(q"┃ <div class="flex-menu-option">
<div class="nav-bar">
%s
%s
@@ -754,19 +754,19 @@ auto nav_pre_next_svg(O,M)(
</div>
</div>
</div>
-</div>┋",
+</div>┃",
toc,
prev,
next,
);
- string _pre_next = format(q"┋ <div class="flex-menu-option">
+ string _pre_next = format(q"┃ <div class="flex-menu-option">
<div class="nav-bar">
%s
%s
</div>
</div>
</div>
-</div>┋",
+</div>┃",
prev,
next,
);
@@ -809,13 +809,13 @@ auto heading(O)(
? ""
: "<a name=\"" ~ obj.tags.heading_lev_anchor_tag ~ "\"></a>";
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋%s
+ 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%s
%s
</h%s>
- </div>┋",
+ </div>┃",
_horizontal_rule,
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
@@ -829,12 +829,12 @@ auto heading(O)(
obj.metainfo.heading_lev_markup,
);
} else {
- o = format(q"┋%s
+ o = format(q"┃%s
<div class="substance">
<h%s class="%s">%s%s
%s
</h%s>
- </div>┋",
+ </div>┃",
_horizontal_rule,
obj.metainfo.heading_lev_markup,
obj.metainfo.is_a,
@@ -908,12 +908,12 @@ auto para(O)(
_txt = _txt.replaceFirst(rgx.inline_link_anchor,
"<a name=\"$1\"></a>");
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" indent="h%si%s" id="%s">%s
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -924,11 +924,11 @@ auto para(O)(
_txt
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<p class="%s" indent="h%si%s">%s
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.is_a,
obj.attrib.indent_hang,
obj.attrib.indent_base,
@@ -996,12 +996,12 @@ auto quote(O)(
_txt = font_face(_txt);
string o;
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" id="%s">
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -1009,11 +1009,11 @@ auto quote(O)(
_txt
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<p class="%s">
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.is_a,
_txt
);
@@ -1078,12 +1078,12 @@ auto group(O)(
_txt = font_face(_txt);
string o;
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" id="%s">
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -1091,11 +1091,11 @@ auto group(O)(
_txt
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<p class="%s">
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.is_a,
_txt
);
@@ -1161,10 +1161,10 @@ auto block(O)(
_txt = font_face(_txt);
string o;
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" id="%s">%s</p>
-</div>┋",
+</div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -1172,9 +1172,9 @@ auto block(O)(
_txt.stripRight
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<p class="%s">%s</p>
-</div>┋",
+</div>┃",
obj.metainfo.is_a,
_txt.stripRight
);
@@ -1240,10 +1240,10 @@ auto verse(O)(
_txt = font_face(_txt);
string o;
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" id="%s">%s</p>
- </div>┋",
+ </div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -1251,9 +1251,9 @@ auto verse(O)(
_txt
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<p class="%s">%s</p>
- </div>┋",
+ </div>┃",
obj.metainfo.is_a,
_txt
);
@@ -1317,10 +1317,10 @@ auto code(O)(
assert(obj.metainfo.is_a == "code");
string o;
if (!(obj.metainfo.identifier.empty)) {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<pre><p class="%s" id="%s">%s</p></pre>
-</div>┋",
+</div>┃",
obj.metainfo.identifier,
(obj.metainfo.object_number.empty) ? "" : obj.metainfo.identifier,
obj.metainfo.is_a,
@@ -1328,9 +1328,9 @@ auto code(O)(
_txt
);
} else {
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<pre><p class="%s">%s</p></pre>
-</div>┋",
+</div>┃",
obj.metainfo.is_a,
_txt
);
@@ -1405,7 +1405,7 @@ auto table(O)(
_txt = t[0];
string _note = t[1];
string o;
- o = format(q"┋ <div class="substance">
+ o = format(q"┃ <div class="substance">
<label class="ocn"><a href="#%s" class="lnkocn">%s</a></label>
<p class="%s" id="%s">%s
<table summary="normal text css" width="95%%" border="0" bgcolor="white" cellpadding="2" align="center">
@@ -1413,7 +1413,7 @@ auto table(O)(
</table>
%s
</p>
-</div>┋",
+</div>┃",
obj.metainfo.object_number,
obj.metainfo.object_number,
obj.metainfo.is_a,
@@ -2119,7 +2119,7 @@ template outputEPub3() {
#+BEGIN_SRC d
string epub3_mimetypes() {
string o;
- o = format(q"┋application/epub+zip┋") ~ "\n";
+ o = format(q"┃application/epub+zip┃") ~ "\n";
return o;
}
#+END_SRC
@@ -2132,13 +2132,13 @@ string epub3_mimetypes() {
#+BEGIN_SRC d
string epub3_container_xml() {
string o;
- o = format(q"┋<?xml version='1.0' encoding='utf-8'?>┋") ~ "\n";
- o ~= format(q"┋<container version="1.0"
+ o = format(q"┃<?xml version='1.0' encoding='utf-8'?>┃") ~ "\n";
+ o ~= format(q"┃<container version="1.0"
xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/content.opf"
media-type="application/oebps-package+xml" />
-</rootfiles>┋") ~ "\n</container>\n";
+</rootfiles>┃") ~ "\n</container>\n";
return o;
}
#+END_SRC
@@ -2156,7 +2156,7 @@ string epub3_oebps_content(D,M,P)(D doc_abstraction, M doc_matters, P parts) {
auto xhtml_format = outputXHTMLs();
auto pth_epub3 = DocReformPathsEPUB!()(doc_matters.output_path, doc_matters.src.language);
string _uuid = "18275d951861c77f78acd05672c9906924c59f18a2e0ba06dad95959693e9bd8"; // TODO sort uuid in doc_matters!
- string content = format(q"┋ <?xml version='1.0' encoding='utf-8'?>
+ string content = format(q"┃ <?xml version='1.0' encoding='utf-8'?>
<package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="EPB-UUID">
<metadata
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
@@ -2183,7 +2183,7 @@ string epub3_oebps_content(D,M,P)(D doc_abstraction, M doc_matters, P parts) {
<link rel="stylesheet" href="%s" type="text/css" id="main-css" />
<!-- nav epub3 navigation -->
<item id="nav" href="toc_nav.xhtml" media-type="application/xhtml+xml" properties="nav" />
-┋",
+┃",
_uuid,
xhtml_format.special_characters_text(doc_matters.conf_make_meta.meta.title_full),
xhtml_format.special_characters_text(doc_matters.conf_make_meta.meta.title_main),
@@ -2208,8 +2208,8 @@ string epub3_oebps_content(D,M,P)(D doc_abstraction, M doc_matters, P parts) {
// TODO sort jpg & png
content ~= " " ~ "<!-- Images -->" ~ "\n ";
foreach (image; doc_matters.srcs.image_list) {
- content ~= format(q"┋ <item id="%s" href="%s/%s" media-type="image/%s" />
-┋",
+ content ~= format(q"┃ <item id="%s" href="%s/%s" media-type="image/%s" />
+┃",
image.baseName.stripExtension,
(pth_epub3.doc_oebps_image(doc_matters.src.filename)).chompPrefix("OEBPS/"),
image,
@@ -2352,7 +2352,7 @@ string epub2_oebps_toc_ncx(D,I)(D doc_abstraction, I doc_matters) {
auto markup = InlineMarkup();
auto rgx = Rgx();
enum DomTags { none, open, close, close_and_open, open_still, }
- string toc = format(q"┋<?xml version='1.0' encoding='utf-8'?>
+ string toc = format(q"┃<?xml version='1.0' encoding='utf-8'?>
<ncx xmlns="http://www.daisy.org/z3986/2005/ncx/" version="2005-1">
<head>
<!-- four required metadata items (for all NCX documents,
@@ -2371,7 +2371,7 @@ string epub2_oebps_toc_ncx(D,I)(D doc_abstraction, I doc_matters) {
<docAuthor>
<text>%s</text>
</docAuthor>
-<navMap>┋",
+<navMap>┃",
doc_matters.conf_make_meta.meta.title_full, // title
(doc_matters.conf_make_meta.meta.creator_author.empty) ? ""
: " by " ~ doc_matters.conf_make_meta.meta.creator_author, // author
@@ -2394,12 +2394,12 @@ string epub2_oebps_toc_ncx(D,I)(D doc_abstraction, I doc_matters) {
case DomTags.close_and_open :
++counter;
toc ~= "\n </navPoint>";
- toc ~= format(q"┋
+ toc ~= format(q"┃
<navPoint class="chapter" id="navpoint" playOrder="%s">
<navLabel>
<text>%s</text>
</navLabel>
- <content src="%s.xhtml%s" />┋",
+ <content src="%s.xhtml%s" />┃",
counter,
_txt,
obj.tags.segment_anchor_tag_epub,
@@ -2408,12 +2408,12 @@ string epub2_oebps_toc_ncx(D,I)(D doc_abstraction, I doc_matters) {
break;
case DomTags.open :
++counter;
- toc ~= format(q"┋
+ toc ~= format(q"┃
<navPoint class="chapter" id="navpoint" playOrder="%s">
<navLabel>
<text>%s</text>
</navLabel>
- <content src="%s.xhtml%s" />┋",
+ <content src="%s.xhtml%s" />┃",
counter,
_txt,
obj.tags.segment_anchor_tag_epub,
@@ -2427,12 +2427,12 @@ string epub2_oebps_toc_ncx(D,I)(D doc_abstraction, I doc_matters) {
}
}
}
- toc ~= format(q"┋
+ toc ~= format(q"┃
</navPoint>
</navPoint>
</navPoint>
</navMap>
-</ncx>┋");
+</ncx>┃");
return toc;
}
#+END_SRC
@@ -2737,40 +2737,40 @@ void outputEPub3(D,I)(
assert(obj.text.length > 0);
if (obj.metainfo.heading_lev_markup <= 4) {
oepbs_content_parts["manifest_documents"] ~=
- format(q"┋ <item id="%s.xhtml" href="%s.xhtml" media-type="application/xhtml+xml" />
-┋",
+ format(q"┃ <item id="%s.xhtml" href="%s.xhtml" media-type="application/xhtml+xml" />
+┃",
obj.tags.segment_anchor_tag_epub,
obj.tags.segment_anchor_tag_epub,
);
oepbs_content_parts["spine"] ~=
- format(q"┋ <itemref idref="%s.xhtml" linear="yes" />
-┋",
+ format(q"┃ <itemref idref="%s.xhtml" linear="yes" />
+┃",
obj.tags.segment_anchor_tag_epub,
);
oepbs_content_parts["guide"] ~=
- format(q"┋ <reference type="%s" href="%s" />
-┋",
+ format(q"┃ <reference type="%s" href="%s" />
+┃",
obj.tags.segment_anchor_tag_epub,
obj.tags.segment_anchor_tag_epub,
);
} else if (obj.metainfo.heading_lev_markup > 4) {
oepbs_content_parts["manifest_documents"] ~=
- format(q"┋ <item id="%s.xhtml#%s" href="%s.xhtml#%s" media-type="application/xhtml+xml" />
-┋",
+ format(q"┃ <item id="%s.xhtml#%s" href="%s.xhtml#%s" media-type="application/xhtml+xml" />
+┃",
obj.tags.segment_anchor_tag_epub,
obj.metainfo.object_number,
obj.tags.segment_anchor_tag_epub,
obj.metainfo.object_number,
);
oepbs_content_parts["spine"] ~=
- format(q"┋ <itemref idref="%s.xhtml#%s" linear="yes" />
-┋",
+ format(q"┃ <itemref idref="%s.xhtml#%s" linear="yes" />
+┃",
obj.tags.segment_anchor_tag_epub,
obj.metainfo.object_number,
);
oepbs_content_parts["guide"] ~=
- format(q"┋ <reference type="%s#%s" href="%s#%s" />
-┋",
+ format(q"┃ <reference type="%s#%s" href="%s#%s" />
+┃",
obj.tags.segment_anchor_tag_epub,
obj.metainfo.object_number,
obj.tags.segment_anchor_tag_epub,