Kawai Wiki

Rev

Rev 93 | Rev 154 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 93 Rev 95
Line 2... Line 2...
2
2
3
import java.util.Iterator;
3
import java.util.Iterator;
4
import java.util.Map;
4
import java.util.Map;
5
5
6
import javax.servlet.jsp.PageContext;
6
import javax.servlet.jsp.PageContext;
-
 
7
-
 
8
import org.mentaregex.Regex;
7
9
8
public class Code implements KCode {
10
public class Code implements KCode {
9
       
11
       
10
        @Override
12
        @Override
11
        public boolean hasBody() {
13
        public boolean hasBody() {
Line 28... Line 30...
28
                        indent = attrs.get("ul").equals("true");
30
                        indent = attrs.get("ul").equals("true");
29
                }
31
                }
30
32
31
                if (indent) sb.append("<ul>");
33
                if (indent) sb.append("<ul>");
32
                sb.append(buildOpenShTag(attrs));
34
                sb.append(buildOpenShTag(attrs));
33
                sb.append(html);
-
 
-
 
35
                sb.append(escapeAngleBrackets(html));
34
                sb.append("</pre>");
36
                sb.append("</pre>");
35
                if (indent) sb.append("</ul>");
37
                if (indent) sb.append("</ul>");
36
                return sb.toString();
38
                return sb.toString();
-
 
39
        }
-
 
40
       
-
 
41
        private String escapeAngleBrackets(String html) {
-
 
42
                String s = Regex.sub(html, "s/\\</\\&lt\\;/g");
-
 
43
                s = Regex.sub(s, "s/\\>/\\&gt\\;/g");
-
 
44
                return s;
37
        }
45
        }
38
       
46
       
39
        private static String buildOpenShTag(Map<String, String> map) {
47
        private static String buildOpenShTag(Map<String, String> map) {
40
                StringBuilder sb = new StringBuilder(256);
48
                StringBuilder sb = new StringBuilder(256);
41
                sb.append("<pre class=\"");
49
                sb.append("<pre class=\"");