comparison src/org/nwoca/ssdt/tools/html2wiki/Html2Wiki.java @ 4:22ed6d93442c

Start modifying transformers to Confluence wiki syntax
author smith@nwoca.org
date Tue, 25 Jan 2011 21:59:31 -0500
parents 5da2e67620f9
children d34f4d408ef9
comparison
equal deleted inserted replaced
3:4417b025157e 4:22ed6d93442c
34 34
35 /** Creates a new instance of Html2Wiki. */ 35 /** Creates a new instance of Html2Wiki. */
36 public Html2Wiki(String html) { 36 public Html2Wiki(String html) {
37 buffer = new StringBuffer(html); 37 buffer = new StringBuffer(html);
38 transformers = new ArrayList<Transformer>(); 38 transformers = new ArrayList<Transformer>();
39 transformers.add(new PreTagTransformer()); 39 // transformers.add(new PreTagTransformer());
40 transformers.add(new DeleteTransformer("^\\s",true)); 40 // transformers.add(new DeleteTransformer("^\\s",true));
41 transformers.add(new DeleteTransformer("<html>|</html>|<body>|</body>")); 41 transformers.add(new DeleteTransformer("<html>|</html>|<body>|</body>"));
42 transformers.add(new DeleteTransformer("<!--.*-->(\\n|\\r)*",true)); 42 transformers.add(new DeleteTransformer("<!--.*-->(\\n|\\r)*",true));
43 transformers.add(new DeleteTransformer("<a .*?>|</a>")); 43 transformers.add(new DeleteTransformer("<a .*?>|</a>"));
44 transformers.add(new DeleteTransformer("(?m)^\\*")); 44 transformers.add(new DeleteTransformer("(?m)^\\*"));
45 transformers.add(new DeleteTransformer("<blockquote>|</blockquote>")); 45 // transformers.add(new DeleteTransformer("<blockquote>|</blockquote>"));
46 transformers.add(new DeleteTransformer("<p>")); 46 transformers.add(new DeleteTransformer("<p>"));
47 transformers.add(new DeleteTransformer("(?m)<br>$")); 47 transformers.add(new DeleteTransformer("(?m)<br>$"));
48 transformers.add(new DeleteTransformer("<font .*?>|</font>")); 48 transformers.add(new DeleteTransformer("<font .*?>|</font>"));
49 transformers.add(new CloseTagTransformer("<li>","(\n|\r)*(<li>|</ul>|</ol>|<ul>|<ol>)","\n</li>")); 49 transformers.add(new CloseTagTransformer("<li>","(\n|\r)*(<li>|</ul>|</ol>|<ul>|<ol>)","</li>"));
50 transformers.add(new BadTableDataTransformer()); 50 transformers.add(new BadTableDataTransformer());
51 transformers.add(new BadTableRowTransformer()); 51 transformers.add(new BadTableRowTransformer());
52 transformers.add(new ReplaceTransformer("</td>","\n</td>")); 52 // transformers.add(new ReplaceTransformer("</td>","\n</td>"));
53 transformers.add(new ReplaceTransformer("\\{","\\{"));
54 transformers.add(new ReplaceTransformer("\\}","\\}"));
55 // transformers.add(new ReplaceTransformer("\\[","\\["));
56 // transformers.add(new ReplaceTransformer("\\]","\\]"));
57 transformers.add(new ReplaceTransformer("<br>","\\\\"));
58 transformers.add(new ReplaceTransformer("<table.*?>|</table>","{table}"));
59 transformers.add(new ReplaceTransformer("<tr>|</tr>","{tr}"));
60 transformers.add(new ReplaceTransformer("<td>|</td>","{td}"));
61 transformers.add(new ReplaceTransformer("<th>|</th>","{th}"));
62 transformers.add(new ReplaceTransformer("<ol.*?>|</ol>","{ol}"));
63 transformers.add(new ReplaceTransformer("<ul.*?>|</ul>","{ul}"));
64 transformers.add(new ReplaceTransformer("<li>","{li}"));
65 transformers.add(new ReplaceTransformer("</li>","{li}\n"));
53 transformers.add(new ChapterTransformer(category)); 66 transformers.add(new ChapterTransformer(category));
54 transformers.add(new TagTransformer("<em>(.*?)</em>", "''")); 67 transformers.add(new TagTransformer("<pre>(.*?)</pre>", true, "{code}","{code}"));
55 transformers.add(new TagTransformer("<strong>(.*?)</strong>", "'''")); 68 transformers.add(new TagTransformer("<center>(.*?)</center>", true, "{center}","{center}"));
56 transformers.add(new TagTransformer("(?s)<kbd>(.*?)</kbd>", "<tt>", "</tt>")); 69 transformers.add(new TagTransformer("<em>(.*?)</em>", "*","*"));
57 transformers.add(new TagTransformer("<h1>(.*)</h1>", "== ", " ==")); 70 transformers.add(new TagTransformer("<strong>(.*?)</strong>", "*","*"));
58 transformers.add(new TagTransformer("<h2>(.*)</h2>", "=== ", " ===")); 71 transformers.add(new TagTransformer("(?s)<kbd>(.*?)</kbd>", "{{", "}}"));
59 transformers.add(new TagTransformer("<h3>(accessing the program|sample run|sample screens?|sample reports?)</[h|H]3>","=== ", " ===")); 72 transformers.add(new TagTransformer("<h1>(.*)</h1>", "h1. ", ""));
60 transformers.add(new TagTransformer("<h3>(.*)</H3>", "", "")); 73 transformers.add(new TagTransformer("<h2>(.*)</h2>", "h2. ", ""));
61 transformers.add(new TagTransformer("<h3>(.*)</h3>", "==== ", " ====")); 74 transformers.add(new TagTransformer("<h3>(accessing the program|sample run|sample screens?|sample reports?)</[h|H]3>","h3.", ""));
62 transformers.add(new TagTransformer("<h4>(.*)</h4>", "===== ", " =====")); 75 transformers.add(new TagTransformer("<h3>(.*)</H3>", "h3. ", ""));
63 transformers.add(new TagTransformer("<h5>(.*)</h5>", "====== ", " ======")); 76 transformers.add(new TagTransformer("<h3>(.*)</h3>", "h3. ", ""));
64 transformers.add(new TagTransformer("<h6>(.*)</h6>", "======= ", " =======")); 77 transformers.add(new TagTransformer("<h4>(.*)</h4>", "h4. ", ""));
78 transformers.add(new TagTransformer("<h5>(.*)</h5>", "h5. ", ""));
79 transformers.add(new TagTransformer("<h6>(.*)</h6>", "h6. ", ""));
65 transformers.add(new DeleteTransformer("(?s)<hr.*?>")); 80 transformers.add(new DeleteTransformer("(?s)<hr.*?>"));
66 81
67 } 82 }
68 83
69 /** 84 /**
121 136
122 FileUtils.writeStringToFile(new File(FilenameUtils.removeExtension(input.getPath())+".wikiIndex"),wikiIndex.toString(),null); 137 FileUtils.writeStringToFile(new File(FilenameUtils.removeExtension(input.getPath())+".wikiIndex"),wikiIndex.toString(),null);
123 } 138 }
124 139
125 public static String generateFilename(String input) { 140 public static String generateFilename(String input) {
126 return input.replaceAll("\\\\|/|:|\\(|\\)","-"); 141 return input.replaceAll("\\\\|/|:|\\(|\\)","-").replace("<br>", "");
127 142
128 } 143 }
129 public String getWikiText() { 144 public String getWikiText() {
130 convert(); 145 convert();
131 return buffer.toString(); 146 return buffer.toString();