diff options
| author | Ralph Amissah <ralph.amissah@gmail.com> | 2020-04-11 19:58:30 -0400 | 
|---|---|---|
| committer | Ralph Amissah <ralph.amissah@gmail.com> | 2020-05-20 11:27:25 -0400 | 
| commit | 9f7281b32593326ed995cb3b155b6643cdb43e66 (patch) | |
| tree | 985b20d4d5a9c60db8c526c07a5384cb4a577b5c /org | |
| parent | opt_actions, re-arrangment, minor (diff) | |
metaverse, set behavior of block & group text
- group: loses spaces, retains double newlines
- block: retains spaces and newlines
Diffstat (limited to 'org')
| -rw-r--r-- | org/default_regex.org | 2 | ||||
| -rw-r--r-- | org/metaverse.org | 93 | 
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() { | 
