Changeset 23


Ignore:
Timestamp:
Jun 3, 2014, 2:16:46 AM (7 years ago)
Author:
vadim.godunko
Message:

Register regular expressions's group to detect block markup.

Location:
trunk/forge/source/wiki
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/forge/source/wiki/forge-wiki-block_parsers-lists.adb

    r21 r23  
    8484      Forge.Wiki.Parsers.Register_Block_Parser
    8585       (League.Strings.To_Universal_String
    86          ("^\p{White_Space}*\-\p{White_Space}*(\P{White_Space})"),
     86         ("^\p{White_Space}*(\-)\p{White_Space}*(\P{White_Space})"),
     87        2,
    8788        1,
    88         1,
     89        2,
    8990        List_Block_Parser'Tag);
    9091   end Register;
  • trunk/forge/source/wiki/forge-wiki-parsers.adb

    r22 r23  
    6565      Regexp_String : League.Strings.Universal_String;
    6666      Total_Groups  : Positive;
     67      Markup_Group  : Natural;
    6768      Offset_Group  : Positive;
    6869      Parser_Tag    : Ada.Tags.Tag;
     
    134135         Self.Block_Info.Append
    135136          ((Match_Group  => Group,
     137            Markup_Group =>
     138              (if Block.Markup_Group = 0 then 0
     139                 else Group + Block.Offset_Group),
    136140            Offset_Group => Group + Block.Offset_Group,
    137141            Is_Start     => Is_Start,
     
    226230     Tag           : Ada.Tags.Tag) is
    227231   begin
    228       Paragraph_Registry := (Regexp_String, Total_Groups, Offset_Group, Tag);
     232      Paragraph_Registry :=
     233       (Regexp_String, Total_Groups, 0, Offset_Group, Tag);
    229234   end Register_Paragraph_Block_Parser;
    230235
     
    236241    (Regexp_String : League.Strings.Universal_String;
    237242     Total_Groups  : Positive;
     243     Markup_Group  : Natural;
    238244     Offset_Group  : Positive;
    239245     Tag           : Ada.Tags.Tag) is
    240246   begin
    241       Block_Registry.Append ((Regexp_String, Total_Groups, Offset_Group, Tag));
     247      Block_Registry.Append
     248       ((Regexp_String, Total_Groups, Markup_Group, Offset_Group, Tag));
    242249   end Register_Block_Parser;
    243250
  • trunk/forge/source/wiki/forge-wiki-parsers.ads

    r22 r23  
    9090    (Regexp_String : League.Strings.Universal_String;
    9191     Total_Groups  : Positive;
     92     Markup_Group  : Natural;
    9293     Offset_Group  : Positive;
    9394     Tag           : Ada.Tags.Tag);
     
    111112   type Block_Expression_Item is record
    112113      Match_Group  : Positive;
     114      Markup_Group : Natural;
    113115      Offset_Group : Positive;
     116      --  Regular expression's groups to extract:
     117      --   - matching of block element's regular expression
     118      --   - markup part of block element (it is optional part)
     119      --   - start of text after markup part
    114120      Is_Start     : Boolean;
    115121      --  Regular expression detects start of new block element of this kind.
Note: See TracChangeset for help on using the changeset viewer.