*/
  public String getHTML() {
    StringBuilder res = new StringBuilder(code.size() * 100);

    for (int i = 0; i < code.size(); i++) {
      Line l = code.get(i);
      StringBuilder lsb = l.sbuild;
      int from = 0;
      ArrayList<TokenMarkerInfo> tmall = marker.getStyles(l);
      for (TokenMarkerInfo ti : tmall) {
        if (ti.startPos > from) {
          res.append(htmlSpecialChars(lsb.substring(from, ti.startPos)));
        }
        if (ti.startPos < ti.endPos) {
          res.append("<span style=\""); //$NON-NLS-1$
          if ((ti.fontStyle & Font.BOLD) != 0) {
            res.append("font-weight:bold;"); //$NON-NLS-1$
          }
          if ((ti.fontStyle & Font.ITALIC) != 0) {
            res.append("font-style:italic;"); //$NON-NLS-1$
          }
          if (ti.color != null) {
            res.append("color:#" + Integer.toHexString(ti.color.getRGB()).substring(2) + ";"); //$NON-NLS-1$ //$NON-NLS-2$
          }
          res.append("\">"); //$NON-NLS-1$
          res.append(htmlSpecialChars(lsb.substring(ti.startPos, ti.endPos)));
          res.append("</span>"); //$NON-NLS-1$
        }
        from = ti.endPos;
      }
      res.append("\n"); //$NON-NLS-1$
    }

    return res.toString();
  }