aboutsummaryrefslogtreecommitdiffhomepage
path: root/org
diff options
context:
space:
mode:
Diffstat (limited to 'org')
-rw-r--r--org/default_regex.org2
-rw-r--r--org/metaverse.org93
2 files changed, 50 insertions, 45 deletions
diff --git a/org/default_regex.org b/org/default_regex.org
index 4ddaeca..9ad5539 100644
--- a/org/default_regex.org
+++ b/org/default_regex.org
@@ -464,7 +464,7 @@ static inline_notes_al_special_char_note = ctRegex!(`【(?P<char>(?
static inline_al_delimiter_open_regular = ctRegex!(`【\s`, "m");
static inline_al_delimiter_open_symbol_star = ctRegex!(`【[*]\s`, "m");
static inline_al_delimiter_open_symbol_plus = ctRegex!(`【[+]\s`, "m");
-static inline_text_and_note_al_ = ctRegex!(`(.+?(?:【[*+]*\s+.+?】|$))`, "mg");
+static inline_text_and_note_al_ = ctRegex!(`(.+?(?:【[*+]*\s+.+?】|.+))`, "mg");
#+END_SRC
*** inline links
diff --git a/org/metaverse.org b/org/metaverse.org
index 956b215..63b3450 100644
--- a/org/metaverse.org
+++ b/org/metaverse.org
@@ -5457,45 +5457,50 @@ process and use an_object["table_head"] (then empty it)
if (!(stage_reset_note_numbers) && reset_note_numbers) {
stage_reset_note_numbers = true;
}
+ obj_txt_out = "";
if (obj_txt_in.match(rgx.inline_notes_al_gen)) {
- if (auto m = obj_txt_in.matchAll(rgx.inline_text_and_note_al_)) {
- if (stage_reset_note_numbers) {
- n_foot = 0;
- n_foot_reg = 0;
- n_foot_sp_asterisk = 0;
- n_foot_sp_plus = 0;
- }
- stage_reset_note_numbers = false;
- foreach(n; m) {
- if (n.hit.to!string.match(rgx.inline_al_delimiter_open_symbol_star)) {
- flg_notes_star = true;
- ++n_foot_sp_asterisk;
- asterisks_ = "*";
- n_foot=n_foot_sp_asterisk;
- obj_txt_out ~= n.hit.to!string.replaceFirst(
- rgx.inline_al_delimiter_open_symbol_star,
- (mkup.en_a_o ~ replicate(asterisks_, n_foot_sp_asterisk) ~ " ")
- );
- } else if (n.hit.to!string.match(rgx.inline_al_delimiter_open_symbol_plus)) {
- flg_notes_plus = true;
- ++n_foot_sp_plus;
- plus_ = "*";
- n_foot=n_foot_sp_plus;
- obj_txt_out ~= n.hit.to!string.replaceFirst(
- rgx.inline_al_delimiter_open_symbol_plus,
- (mkup.en_a_o ~ replicate(plus_, n_foot_sp_plus) ~ " ")
- );
- } else if (n.hit.to!string.match(rgx.inline_al_delimiter_open_regular)) {
- flg_notes_reg = true;
- ++n_foot_reg;
- n_foot=n_foot_reg;
- obj_txt_out ~= n.hit.to!string.replaceFirst(
- rgx.inline_al_delimiter_open_regular,
- (mkup.en_a_o ~ n_foot.to!string ~ " ")
- );
- } else {
- obj_txt_out ~= n.hit.to!string;
+ string[] _tmp_txt;
+ foreach (x; obj_txt_in.split("\n")) {
+ if (auto m = x.matchAll(rgx.inline_text_and_note_al_)) {
+ if (stage_reset_note_numbers) {
+ n_foot = 0;
+ n_foot_reg = 0;
+ n_foot_sp_asterisk = 0;
+ n_foot_sp_plus = 0;
+ }
+ stage_reset_note_numbers = false;
+ foreach(n; m) {
+ if (n.hit.to!string.match(rgx.inline_al_delimiter_open_symbol_star)) { //
+ flg_notes_star = true;
+ ++n_foot_sp_asterisk;
+ asterisks_ = "*";
+ n_foot=n_foot_sp_asterisk;
+ _tmp_txt ~= n.hit.to!string.replaceFirst(
+ rgx.inline_al_delimiter_open_symbol_star,
+ (mkup.en_a_o ~ replicate(asterisks_, n_foot_sp_asterisk) ~ " ")
+ );
+ } else if (n.hit.to!string.match(rgx.inline_al_delimiter_open_symbol_plus)) { //
+ flg_notes_plus = true;
+ ++n_foot_sp_plus;
+ plus_ = "*";
+ n_foot=n_foot_sp_plus;
+ _tmp_txt ~= n.hit.to!string.replaceFirst(
+ rgx.inline_al_delimiter_open_symbol_plus,
+ (mkup.en_a_o ~ replicate(plus_, n_foot_sp_plus) ~ " ")
+ );
+ } else if (n.hit.to!string.match(rgx.inline_al_delimiter_open_regular)) { //
+ flg_notes_reg = true;
+ ++n_foot_reg;
+ n_foot=n_foot_reg;
+ _tmp_txt ~= n.hit.to!string.replaceFirst(
+ rgx.inline_al_delimiter_open_regular,
+ (mkup.en_a_o ~ n_foot.to!string ~ " ")
+ );
+ } else {
+ _tmp_txt ~= n.hit.to!string;
+ }
}
+ obj_txt_out = _tmp_txt.join("\n");
}
}
} else {
@@ -5651,13 +5656,13 @@ process and use an_object["table_head"] (then empty it)
- font faces (bold, italics, underscore etc.)
- footnotes/endnotes
- links
-- newlines detected and kept?
+- drop spaces
+- keep newlines?
#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_group(string obj_txt_in) {
- obj_txt["munge"]=obj_txt_in;
- TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt["munge"]);
+ TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt_in.split("\n\n").join(" \\\\\n \\\\\n"));
return t;
}
invariant() {
@@ -5671,13 +5676,14 @@ process and use an_object["table_head"] (then empty it)
- font faces (bold, italics, underscore etc.)
- footnotes/endnotes
- links
+- keep spaces
+- keep newlines
- newlines detected and kept?
#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_block()(string obj_txt_in) {
- obj_txt["munge"]=obj_txt_in;
- TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt["munge"]);
+ TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt_in);
return t;
}
invariant() {
@@ -5696,8 +5702,7 @@ process and use an_object["table_head"] (then empty it)
#+NAME: meta_emitters_obj_inline_markup_munge
#+BEGIN_SRC d
@safe auto munge_verse()(string obj_txt_in) {
- obj_txt["munge"]=obj_txt_in;
- TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt["munge"]);
+ TxtPlusHasFootnotesUrlsImages t = object_notes_and_links_(obj_txt_in);
return t;
}
invariant() {