1 6 package tests.jfun.parsec.coloring; 7 8 13 public class Java2Html implements CodeStream { 14 private final HtmlBuffer buf; 15 private static final String KEYWORD = "keyword"; 16 private static final String COMMENT = "comment"; 17 private static final String OPERATOR = "operator"; 18 private static final String NUMBER = "number"; 19 private static final String CHAR = "char"; 20 private static final String STRING = "string"; 21 private static final String NATIVE = "native"; 22 private static final String STANDARD = "std"; 23 private static final String WHITESPACE = "whitespace"; 24 private static final String REGULAR = "regular"; 25 26 public void addKeyword(CharSequence cs, int from, int len) { 27 buf.add(KEYWORD, cs, from, len); 28 } 29 30 public void addOperator(CharSequence cs, int from, int len) { 31 buf.add(OPERATOR, cs, from, len); 32 } 33 34 public void addComment(CharSequence cs, int from, int len) { 35 buf.add(COMMENT, cs, from, len); 36 } 37 38 public void addNativeWord(CharSequence cs, int from, int len) { 39 buf.add(NATIVE, cs, from, len); 40 } 41 42 public void addStandardWord(CharSequence cs, int from, int len) { 43 buf.add(STANDARD, cs, from, len); 44 } 45 46 public void addStringLiteral(CharSequence cs, int from, int len) { 47 buf.add(STRING, cs, from, len); 48 } 49 50 public void addCharLiteral(CharSequence cs, int from, int len) { 51 buf.add(CHAR, cs, from, len); 52 } 53 54 public void addNumberLiteral(CharSequence cs, int from, int len) { 55 buf.add(NUMBER, cs, from, len); 56 } 57 58 public void addWhitespace(CharSequence cs, int from, int len) { 59 buf.add(WHITESPACE, cs, from, len); 60 } 61 62 public void addRegular(CharSequence cs, int from, int len) { 63 buf.add(REGULAR, cs, from, len); 64 } 65 66 Java2Html(final String keyword_color, 67 final String string_color, final String char_color, 68 final String num_color, final String comment_color, 69 final String native_color, final String std_color, final String op_color) { 70 this.buf = new HtmlBuffer() 71 .setColor(KEYWORD, keyword_color) 72 .setColor(COMMENT, comment_color) 73 .setColor(CHAR, char_color) 74 .setColor(STRING, string_color) 75 .setColor(NATIVE, native_color) 76 .setColor(STANDARD, std_color) 77 .setColor(OPERATOR, op_color) 78 .setColor(NUMBER, num_color); 79 } 80 public static String toHtml(final CharSequence src, 81 final String keyword_color, 82 final String string_color, final String char_color, 83 final String num_color, final String comment_color, 84 final String native_color, final String std_color, final String op_color){ 85 final Java2Html j2h = new Java2Html(keyword_color, string_color, 86 char_color, num_color, comment_color, native_color, 87 std_color, op_color); 88 final JavaFormatter fmt = new JavaFormatter(); 89 fmt.format(src, j2h); 90 return j2h.toString(); 91 } 92 public String toString(){ 93 return buf.toString(); 94 } 95 } 96 | Popular Tags |