From 73f7fdc0368c6dd0bef0df2aa77d1d9a397868a7 Mon Sep 17 00:00:00 2001 From: Antonin Delpeuch Date: Mon, 14 Aug 2017 15:58:27 +0100 Subject: [PATCH] Update TextFormatGuesser to support wikitext --- .../com/google/refine/importers/TextFormatGuesser.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/main/src/com/google/refine/importers/TextFormatGuesser.java b/main/src/com/google/refine/importers/TextFormatGuesser.java index 1bb779763..3bfb01dd6 100644 --- a/main/src/com/google/refine/importers/TextFormatGuesser.java +++ b/main/src/com/google/refine/importers/TextFormatGuesser.java @@ -24,6 +24,8 @@ public class TextFormatGuesser implements FormatGuesser { int closeBraces = 0; int openAngleBrackets = 0; int closeAngleBrackets = 0; + int wikiTableBegin = 0; + int wikiTableRow = 0; int trailingPeriods = 0; char firstChar = ' '; @@ -37,6 +39,8 @@ public class TextFormatGuesser implements FormatGuesser { closeBraces += countSubstrings(chunk, "}"); openAngleBrackets += countSubstrings(chunk, "<"); closeAngleBrackets += countSubstrings(chunk, ">"); + wikiTableBegin += countSubstrings(chunk, "{|"); + wikiTableRow += countSubstrings(chunk, "|-"); trailingPeriods += countLineSuffix(chunk, "."); if (!foundFirstChar) { @@ -50,7 +54,9 @@ public class TextFormatGuesser implements FormatGuesser { } if (foundFirstChar) { - if ((firstChar == '{' || firstChar == '[') && + if (wikiTableBegin >= 1 && wikiTableRow >= 2) { + return "text/wiki"; + } if ((firstChar == '{' || firstChar == '[') && openBraces >= 5 && closeBraces >= 5) { return "text/json"; } else if (openAngleBrackets >= 5 && closeAngleBrackets >= 5) {