Fix markdown rendering for first and last paragraphs

This commit is contained in:
Christian Muehlhaeuser
2019-11-24 04:20:35 +01:00
parent 9d157bad5c
commit 9a3c403d78
+6 -9
View File
@@ -109,22 +109,20 @@ func NewElement(node *bf.Node) Element {
Post: "", Post: "",
} }
case bf.Paragraph: case bf.Paragraph:
if node.Next != nil {
return Element{ return Element{
Token: string(node.Literal), Token: string(node.Literal),
Pre: "\n", Pre: "\n",
Post: "\n", Post: "\n",
} }
}
return Element{
Token: string(node.Literal),
Pre: "",
Post: "\n",
}
case bf.Heading: case bf.Heading:
var pre string
if node.Prev != nil {
pre = "\n"
}
return Element{ return Element{
Token: fmt.Sprintf("%s %s", strings.Repeat("#", node.HeadingData.Level), node.FirstChild.Literal), Token: fmt.Sprintf("%s %s", strings.Repeat("#", node.HeadingData.Level), node.FirstChild.Literal),
Pre: "\n", Pre: pre,
Post: "\n", Post: "\n",
} }
case bf.HorizontalRule: case bf.HorizontalRule:
@@ -249,7 +247,6 @@ func NewElement(node *bf.Node) Element {
Post: "", Post: "",
} }
} }
} }
func (tr *TermRenderer) RenderNode(w io.Writer, node *bf.Node, entering bool) bf.WalkStatus { func (tr *TermRenderer) RenderNode(w io.Writer, node *bf.Node, entering bool) bf.WalkStatus {