FIX: skip <br> inside <p> if next character is \n

This commit is contained in:
Vinoth Kannan
2019-04-14 14:44:54 +05:30
parent a423e9b14a
commit 87b53e170b
3 changed files with 6 additions and 1 deletions

View File

@ -572,4 +572,4 @@ DEPENDENCIES
webpush
BUNDLED WITH
1.17.3
2.0.1

View File

@ -185,6 +185,7 @@ class HtmlToMarkdown
def visit_br(node)
return if node.previous_sibling.nil? && EMPHASIS.include?(node.parent.name)
return if node.parent.name == "p" && (node.next_sibling&.text || "").start_with?("\n")
@stack[-1].markdown << "\n"
end

View File

@ -103,6 +103,10 @@ describe HtmlToMarkdown do
expect(html_to_markdown("Before<br>Inside<br>After")).to eq("Before\nInside\nAfter")
end
it "skips <br> inside <p> if next character is \n" do
expect(html_to_markdown("<p>Before<br>\nInside<br>After</p>")).to eq("Before\nInside\nAfter")
end
it "converts <hr>" do
expect(html_to_markdown("Before<hr>Inside<hr>After")).to eq("Before\n\n---\n\nInside\n\n---\n\nAfter")
end