From 57ec19f963868402571f6dfaaf8b2e71a47e0db7 Mon Sep 17 00:00:00 2001 From: Peter Elliott Date: Sun, 29 Aug 2021 13:14:48 -0700 Subject: [PATCH] LibMarkdown: Add render_to_inline_html() to Document This api is useful when you want to render a markdown document to HTML, but you want to embed it in a existing html document. --- Userland/Libraries/LibMarkdown/Document.cpp | 13 +++++++++++-- Userland/Libraries/LibMarkdown/Document.h | 1 + 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Userland/Libraries/LibMarkdown/Document.cpp b/Userland/Libraries/LibMarkdown/Document.cpp index a0851f018d3..dd68d9d17a2 100644 --- a/Userland/Libraries/LibMarkdown/Document.cpp +++ b/Userland/Libraries/LibMarkdown/Document.cpp @@ -28,13 +28,22 @@ String Document::render_to_html() const builder.append("\n"); builder.append("\n"); + builder.append(render_to_inline_html()); + + builder.append("\n"); + builder.append("\n"); + return builder.build(); +} + +String Document::render_to_inline_html() const +{ + StringBuilder builder; + for (auto& block : m_blocks) { auto s = block.render_to_html(); builder.append(s); } - builder.append("\n"); - builder.append("\n"); return builder.build(); } diff --git a/Userland/Libraries/LibMarkdown/Document.h b/Userland/Libraries/LibMarkdown/Document.h index 154fe7d8029..2337fa4969b 100644 --- a/Userland/Libraries/LibMarkdown/Document.h +++ b/Userland/Libraries/LibMarkdown/Document.h @@ -15,6 +15,7 @@ namespace Markdown { class Document final { public: String render_to_html() const; + String render_to_inline_html() const; String render_for_terminal(size_t view_width = 0) const; static OwnPtr parse(const StringView&);