code: function conv (anchor, txt) {
      /*  convert types  */
      txt = xre.replace(txt, xre("R<([^/].*?)>", "sg"), function (m0, m1) { return "<span class=\"R\">" + mklink(anchor, m1) + "</span>"; });
      txt = xre.replace(txt, xre("M<([^/].*?)>", "sg"), function (m0, m1) { return "<span class=\"M\">" + mklink(anchor, m1) + "</span>"; });
      txt = xre.replace(txt, xre("P<([^/].*?)>", "sg"), "<span class=\"P\">$1</span>");
      txt = xre.replace(txt, xre("F<([^/].*?)>", "sg"), "<span class=\"F\">$1</span>");
      txt = xre.replace(txt, xre("T<([^/].*?)>", "sg"), "<span class=\"T\">$1</span>");
      txt = xre.replace(txt, xre("O<([^/].*?)>", "sg"), "<span class=\"O\">$1</span>");
      txt = xre.replace(txt, xre("C<([^/].*?)>", "sg"), "<code>$1</code>");
      txt = xre.replace(txt, xre("I<([^/].*?):(\\d+)>", "sg"), "<img style=\"float: right;\" src=\"$1\" width=\"$2\"/>");
  
      /*  convert typography aspects  */
      txt = xre.replace(txt, xre("->", "sg"), "&rarr;");
      txt = xre.replace(txt, xre("<-", "sg"), "&larr;");
      txt = xre.replace(txt, xre("--", "sg"), "&mdash;");
      txt = xre.replace(txt, xre("(FIXME|TODO)", "sg"), "<span class=\"$1\">$1</span>");
  
      return txt;
  }
docs: /*  convert text (either with anchors or hyperlinks)