Use IndentWriter proxied by AnsiWriter

This commit is contained in:
Christian Muehlhaeuser
2019-12-04 05:20:30 +01:00
parent 7908b07c31
commit c2a1ec4ccd
3 changed files with 15 additions and 8 deletions
+5 -2
View File
@@ -23,8 +23,10 @@ func (e *CodeBlockElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer)
} }
iw := &IndentWriter{ iw := &IndentWriter{
Indent: indent, Indent: indent,
Forward: w, Forward: &AnsiWriter{
Forward: w,
},
} }
if len(theme) > 0 { if len(theme) > 0 {
@@ -36,5 +38,6 @@ func (e *CodeBlockElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer)
Token: string(e.Code), Token: string(e.Code),
Style: CodeBlock, Style: CodeBlock,
} }
return el.Render(iw, node, tr) return el.Render(iw, node, tr)
} }
+6 -4
View File
@@ -30,19 +30,21 @@ func (e *DocumentElement) Finish(w io.Writer, node *bf.Node, tr *TermRenderer) e
} }
iw := &IndentWriter{ iw := &IndentWriter{
Indent: indent, Indent: indent,
Forward: w, Forward: &AnsiWriter{
Forward: w,
},
} }
_, err := iw.Write(tr.document.Bytes()) _, err := iw.Write(tr.document.Bytes())
if err != nil { if err != nil {
return err return err
} }
tr.document.Reset() tr.document.Reset()
tr.blockStyle.Pop() tr.blockStyle.Pop()
if suffix != "" { if suffix != "" {
renderText(iw, rules, suffix) renderText(w, rules, suffix)
} }
return nil return nil
} }
+4 -2
View File
@@ -29,8 +29,10 @@ func (e *TableElement) Render(w io.Writer, node *bf.Node, tr *TermRenderer) erro
indent = rules.Indent indent = rules.Indent
} }
iw := &IndentWriter{ iw := &IndentWriter{
Indent: indent, Indent: indent,
Forward: w, Forward: &AnsiWriter{
Forward: w,
},
} }
tr.table.writer = tablewriter.NewWriter(iw) tr.table.writer = tablewriter.NewWriter(iw)