]> gitweb.fperrin.net Git - DictionaryPC.git/blobdiff - src/com/hughes/android/dictionary/parser/WikiTokenizer.java
go
[DictionaryPC.git] / src / com / hughes / android / dictionary / parser / WikiTokenizer.java
index 493abf2c52d27e9f67fc8283e49e5884b7f7be83..4a28cee74b79660d8363c7a4427d898b76abe3e6 100644 (file)
@@ -36,6 +36,46 @@ public final class WikiTokenizer {
     void onHtml(WikiTokenizer wikiTokenizer);
   }
   
+  public static class DoNothingCallback implements Callback {
+
+    @Override
+    public void onPlainText(String text) {
+    }
+
+    @Override
+    public void onMarkup(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onWikiLink(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onNewline(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onFunction(WikiTokenizer tokenizer, String functionName,
+        List<String> functionPositionArgs, Map<String, String> functionNamedArgs) {
+    }
+
+    @Override
+    public void onHeading(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onListItem(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onComment(WikiTokenizer wikiTokenizer) {
+    }
+
+    @Override
+    public void onHtml(WikiTokenizer wikiTokenizer) {
+    }
+  }
+  
   //private static final Pattern wikiTokenEvent = Pattern.compile("($)", Pattern.MULTILINE);
   private static final Pattern wikiTokenEvent = Pattern.compile("(" +
                "\\{\\{|\\}\\}|" +
@@ -81,8 +121,10 @@ public final class WikiTokenizer {
     this(wikiText, true);
   }
 
-  public WikiTokenizer(final String wikiText, final boolean isNewline) {
-    this.wikiText = wikiText.replaceAll("\u2028", "\n");
+  public WikiTokenizer(String wikiText, final boolean isNewline) {
+    wikiText = wikiText.replaceAll("\u2028", "\n");
+    wikiText = wikiText.replaceAll("\u0085", "\n");
+    this.wikiText = wikiText;
     this.matcher = wikiTokenEvent.matcher(wikiText);
     justReturnedNewline = isNewline;
   }
@@ -193,6 +235,13 @@ public final class WikiTokenizer {
     assert isListItem();
     return wikiText.substring(start, listPrefixEnd);
   }
+  
+  public static String getListTag(char c) {
+    if (c == '#') {
+      return "ol";
+    }
+    return "ul";
+  }
 
   public String listItemWikiText() {
     assert isListItem();