aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/doc_reform/meta
diff options
context:
space:
mode:
Diffstat (limited to 'src/doc_reform/meta')
-rw-r--r--src/doc_reform/meta/conf_make_meta_structs.d1
-rw-r--r--src/doc_reform/meta/conf_make_meta_yaml.d10
-rw-r--r--src/doc_reform/meta/rgx.d3
3 files changed, 12 insertions, 2 deletions
diff --git a/src/doc_reform/meta/conf_make_meta_structs.d b/src/doc_reform/meta/conf_make_meta_structs.d
index 9707dab..3bab7d0 100644
--- a/src/doc_reform/meta/conf_make_meta_structs.d
+++ b/src/doc_reform/meta/conf_make_meta_structs.d
@@ -147,6 +147,7 @@ struct ConfCompositeSiteLocal {
string w_srv_data_domain; // if not set same as webserv_domain
string w_srv_data_root_part;
string w_srv_data_root_url;
+ string w_srv_data_root_url_html;
string w_srv_data_root_path;
string w_srv_images_root_part;
// string w_srv_url_doc_path;
diff --git a/src/doc_reform/meta/conf_make_meta_yaml.d b/src/doc_reform/meta/conf_make_meta_yaml.d
index 1b5ec70..c33b04a 100644
--- a/src/doc_reform/meta/conf_make_meta_yaml.d
+++ b/src/doc_reform/meta/conf_make_meta_yaml.d
@@ -243,9 +243,17 @@ template contentYAMLtoSpineStruct() {
&& _yaml["webserv"]["data_root_url"].type.string
&& _yaml["webserv"]["data_root_url"].tag.match(rgx.yaml_tag_is_str)
) {
- _struct_composite.conf.w_srv_data_root_url = _yaml["webserv"]["data_root_url"].get!string;
+ _struct_composite.conf.w_srv_data_root_url = _yaml["webserv"]["data_root_url"].get!string;
+ _struct_composite.conf.w_srv_data_root_url_html =
+ _yaml["webserv"]["data_root_url"].get!string ~ "/"
+ ~ _manifested.src.language ~ "/"
+ ~ "html";
} else {
_struct_composite.conf.w_srv_data_root_url = _struct_composite.conf.w_srv_data_root_part;
+ _struct_composite.conf.w_srv_data_root_url_html =
+ _struct_composite.conf.w_srv_data_root_part ~ "/"
+ ~ _manifested.src.language ~ "/"
+ ~ "html";
}
if ("cgi_domain" in _yaml["webserv"]
&& _yaml["webserv"]["cgi_domain"].type.string
diff --git a/src/doc_reform/meta/rgx.d b/src/doc_reform/meta/rgx.d
index 94ef091..d4dd201 100644
--- a/src/doc_reform/meta/rgx.d
+++ b/src/doc_reform/meta/rgx.d
@@ -215,9 +215,10 @@ static template spineRgxIn() {
static inline_link = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>#?(\S+?))├`, "mg");
static inline_link_empty = ctRegex!(`┥(?P<text>.+?)┝┤├`, "mg");
static inline_link_number = ctRegex!(`┥(?P<text>.+?)┝┤(?P<num>[0-9]+)├`, "mg"); // not used
- static inline_link_number_only = ctRegex!(`(┥.+?┝)┤(?P<num>[0-9]+)├`, "mg");
+ static inline_link_number_only = ctRegex!(`(?P<linked_text>┥.+?┝)┤(?P<num>[0-9]+)├`, "mg");
static inline_link_stow_uri = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>[^ 0-9#┥┝┤├][^ 0-9┥┝┤├]+)├`, "mg"); // will not stow (stowed links) or object number internal links
static inline_link_hash = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>#(?P<segname>\S+?))├`, "mg");
+ static inline_link_seg_and_hash = ctRegex!(`┥(?P<text>.+?)┝┤(?P<link>[^/]+?#(?P<segname>.+?))├`, "mg");
static inline_link_clean = ctRegex!(`┤(?:.+?)├|[┥┝]`, "mg");
static inline_link_toc_to_backmatter = ctRegex!(`┤#(?P<link>endnotes|bibliography|bookindex|glossary|blurb)├`, "mg");
static url = ctRegex!(`https?://`, "mg");