Use renderText even without an active style

This commit is contained in:
Christian Muehlhaeuser
2019-12-04 05:47:57 +01:00
parent afd83210ea
commit b518696b44
3 changed files with 9 additions and 11 deletions
+6 -9
View File
@@ -68,17 +68,14 @@ func (e *BaseElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer) error
renderText(w, tr.blockStyle.Current(), e.Suffix)
}()
rules := cascadeStyles(tr.blockStyle, tr.style[e.Style])
if rules == nil {
_, _ = w.Write([]byte(e.Token))
return nil
rules := tr.blockStyle.With(tr.style[e.Style])
if rules != nil {
renderText(w, rules, rules.Prefix)
defer func() {
renderText(w, rules, rules.Suffix)
}()
}
renderText(w, rules, rules.Prefix)
defer func() {
renderText(w, rules, rules.Suffix)
}()
renderText(w, rules, e.Token)
return nil
}
-1
View File
@@ -15,7 +15,6 @@ type CodeBlockElement struct {
func (e *CodeBlockElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer) error {
var theme string
var indent uint
rules := tr.style[CodeBlock]
if rules != nil {
indent = rules.Indent
+3 -1
View File
@@ -13,6 +13,7 @@ type ParagraphElement struct {
func (e *ParagraphElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer) error {
tr.paragraph = &bytes.Buffer{}
rules := tr.style[Paragraph]
tr.blockStyle.Push(rules)
@@ -37,6 +38,7 @@ func (e *ParagraphElement) Finish(w io.Writer, node *bf.Node, tr *TermRenderer)
suffix = rules.Suffix
if node.Prev == nil || (node.Parent != nil && node.Parent.Type == bf.Item) {
// remove indent for list items
indent = 0
}
}
@@ -66,9 +68,9 @@ func (e *ParagraphElement) Finish(w io.Writer, node *bf.Node, tr *TermRenderer)
tr.paragraph.Reset()
tr.paragraph = nil
if rules != nil {
tr.blockStyle.Pop()
}
return nil
}