From c1e2d41cde5071c8a14fe0d9ec74f8a4fe8611bb Mon Sep 17 00:00:00 2001 From: Jean-Philippe Orsini Date: Tue, 12 Jul 2016 11:21:08 +0200 Subject: [PATCH] improved structure --- src/main/java/net/wpitchoune/asciidoctor/HTML.java | 49 ++++++++++++++++++---- src/main/java/net/wpitchoune/asciidoctor/Main.java | 2 +- 2 files changed, 42 insertions(+), 9 deletions(-) diff --git a/src/main/java/net/wpitchoune/asciidoctor/HTML.java b/src/main/java/net/wpitchoune/asciidoctor/HTML.java index 63588a7..8c3bc0b 100644 --- a/src/main/java/net/wpitchoune/asciidoctor/HTML.java +++ b/src/main/java/net/wpitchoune/asciidoctor/HTML.java @@ -106,6 +106,32 @@ public final class HTML { return buf.toString(); } + private static void appendStartTag(StringBuffer buf, String tag, int indent, boolean newline) { + while (indent > 0) { + buf.append('\t'); + indent--; + } + buf.append('<'); + buf.append(tag); + buf.append(">"); + + if (newline) + buf.append('\n'); + } + + private static void appendEndTag(StringBuffer buf, String tag, int indent, boolean newline) { + while (indent > 0) { + buf.append('\t'); + indent--; + } + buf.append(""); + + if (newline) + buf.append('\n'); + } + public String toHTML(Collection entries) throws IOException { StringBuffer buf; List sortedEntries; @@ -115,7 +141,7 @@ public final class HTML { appendHTMLHead(buf, config.getFeedTitle()); - buf.append("\n"); + appendStartTag(buf, "body", 1, true); appendHTMLContentHeader(buf, config.getFeedTitle()); @@ -132,18 +158,25 @@ public final class HTML { Collections.sort(sortedEntries, cmp); for(SyndEntry e: sortedEntries) { - buf.append("\n
"); - buf.append("

"); + appendStartTag(buf, "article", 3, true); + appendStartTag(buf, "header", 4, true); + appendStartTag(buf, "h1", 5, false); buf.append(""); buf.append(e.getTitle()); - buf.append("

"); + buf.append(""); + appendEndTag(buf, "h1", 0, true); + if (e.getPublishedDate() != null) { - buf.append("
"); - buf.append(DATE_FORMATTER.format(e.getPublishedDate())); - buf.append("
"); + buf.append("
"); + buf.append(DATE_FORMATTER.format(e.getPublishedDate())); + buf.append("
\n"); } + + appendEndTag(buf, "header", 4, true); + buf.append(e.getDescription().getValue()); - buf.append("
\n"); + + appendEndTag(buf, "article", 3, true); } buf.append("\n"); diff --git a/src/main/java/net/wpitchoune/asciidoctor/Main.java b/src/main/java/net/wpitchoune/asciidoctor/Main.java index d669885..d5b19a1 100644 --- a/src/main/java/net/wpitchoune/asciidoctor/Main.java +++ b/src/main/java/net/wpitchoune/asciidoctor/Main.java @@ -133,7 +133,7 @@ public class Main { e.setDescription(toSyndContentImpl(itemContent)); - entries.add(e); + entries.add(e); Files.write(html.toPath(), new HTML(cfg).toHTML(e).getBytes()); } -- 2.7.4