1.1 --- a/src/org/sonews/storage/DrupalMessage.java Tue Oct 18 22:55:43 2011 +0200
1.2 +++ b/src/org/sonews/storage/DrupalMessage.java Wed Oct 19 17:23:53 2011 +0200
1.3 @@ -64,6 +64,7 @@
1.4 private static final String CRLF = "\r\n";
1.5 public static final String CHARSET = "UTF-8";
1.6 private static final String XHTML_CONTENT_TYPE = "text/html; charset=" + CHARSET;
1.7 + private static final String ZNAKČKA_KONCE_ŘÁDKU = "◆";
1.8 private String messageID;
1.9
1.10 /**
1.11 @@ -198,7 +199,7 @@
1.12 * - použít delší zástupný řetězec, ne jen jeden znak
1.13 * - umísťovat ho jen tam, kde už nějaký text je (ne mezi >\s*<)
1.14 */
1.15 - inputText = inputText.replaceAll("\\n", "◆\n");
1.16 + inputText = označKonceŘádků(inputText);
1.17
1.18 Runtime r = Runtime.getRuntime();
1.19 Process p = r.exec(new String[]{"tidy", // http://tidy.sourceforge.net
1.20 @@ -219,12 +220,23 @@
1.21
1.22 String outputText = streamToString(p.getInputStream());
1.23
1.24 - outputText = outputText.replaceAll("◆\\n", "\n");
1.25 - outputText = outputText.replaceAll("◆", "\n");
1.26 + outputText = vraťKonceŘádků(outputText);
1.27
1.28 return outputText;
1.29 }
1.30
1.31 + private static String označKonceŘádků(String text) {
1.32 + text = text.replaceAll(">\\s+<", "> <");
1.33 + text = text.replaceAll("\\n", ZNAKČKA_KONCE_ŘÁDKU + "\n");
1.34 + return text;
1.35 + }
1.36 +
1.37 + private static String vraťKonceŘádků(String text) {
1.38 + text = text.replaceAll(ZNAKČKA_KONCE_ŘÁDKU + "\\n", "\n");
1.39 + text = text.replaceAll(ZNAKČKA_KONCE_ŘÁDKU, "\n");
1.40 + return text;
1.41 + }
1.42 +
1.43 /**
1.44 * TODO: refaktorovat, přesunout
1.45 */