anchor.diff:  scan([H | T], Scanned, {Row, Column}, {in_single_quote_slash, Closer}) ->
       scan(T, append_char(Scanned, H), {Row, Column + 1}, {in_single_quote, Closer});
   
  -% end quote
  +						% end quote
   scan("\"" ++ T, Scanned, {Row, Column}, {in_double_quote, Closer}) ->
       scan(T, append_char(Scanned, 34), {Row, Column + 1}, {in_code, Closer});
   
  -% treat single quotes the same as double quotes
  +						% treat single quotes the same as double quotes
   scan("\'" ++ T, Scanned, {Row, Column}, {in_single_quote, Closer}) ->
       scan(T, append_char(Scanned, 34), {Row, Column + 1}, {in_code, Closer});
   
  
positive.code: 
  scan("endverbatim " ++ T, Scanned, {Row, Column}, {in_verbatim_code, BackTrack, Tag}) ->
      scan(T, Scanned, {Row, Column + length("endverbatim ")}, 
          {in_endverbatim_code, "", lists:reverse("endverbatim ", BackTrack), Tag});
  
  scan(" " ++ T, Scanned, {Row, Column}, {in_endverbatim_code, "", BackTrack, Tag}) ->
      scan(T, Scanned, {Row, Column + 1}, {in_endverbatim_code, "", [$\ |BackTrack], Tag});
  
negative.code:     mark_keywords(T, [{by_keyword, Pos, String}|Acc]);
  mark_keywords([{identifier, Pos, "with" = String}|T], Acc) ->
      mark_keywords(T, [{with_keyword, Pos, String}|Acc]);
  						% These must be succeeded by a close_tag
  mark_keywords([{identifier, Pos, "only" = String}, {close_tag, _, _} = CloseTag|T], Acc) ->
      mark_keywords(T, lists:reverse([{only_keyword, Pos, String}, CloseTag], Acc));
  mark_keywords([{identifier, Pos, "parsed" = String}, {close_tag, _, _} = CloseTag|T], Acc) ->
  